aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJay Belanger2007-04-16 01:54:54 +0000
committerJay Belanger2007-04-16 01:54:54 +0000
commit9893de2a77218b16d505b31ab6358ed4625249a9 (patch)
tree3a553c40a029883b83764997f3b437f10a87d963
parent802ed9b9e781f7e580f0248980395ffbae07abde (diff)
downloademacs-9893de2a77218b16d505b31ab6358ed4625249a9.tar.gz
emacs-9893de2a77218b16d505b31ab6358ed4625249a9.zip
(Title page): Remove the date.
(The Standard Calc Interface): Change the trail title. (Basic Arithmetic): Emphasize that / binds less strongly than *. (Copying): Move to the appendices. (GNU Free Documentation License): Add as an appendix.
-rw-r--r--man/calc.texi941
1 files changed, 474 insertions, 467 deletions
diff --git a/man/calc.texi b/man/calc.texi
index 64ee0b0c93a..15207cc59b8 100644
--- a/man/calc.texi
+++ b/man/calc.texi
@@ -92,7 +92,8 @@ under the terms of the GNU Free Documentation License, Version 1.2 or
92any later version published by the Free Software Foundation; with the 92any later version published by the Free Software Foundation; with the
93Invariant Sections being just ``GNU GENERAL PUBLIC LICENSE'', with the 93Invariant Sections being just ``GNU GENERAL PUBLIC LICENSE'', with the
94Front-Cover texts being ``A GNU Manual,'' and with the Back-Cover 94Front-Cover texts being ``A GNU Manual,'' and with the Back-Cover
95Texts as in (a) below. 95Texts as in (a) below. A copy of the license is included in the section
96entitled ``GNU Free Documentation License.''
96 97
97(a) The FSF's Back-Cover Text is: ``You have freedom to copy and modify 98(a) The FSF's Back-Cover Text is: ``You have freedom to copy and modify
98this GNU Manual, like GNU software. Copies published by the Free 99this GNU Manual, like GNU software. Copies published by the Free
@@ -111,8 +112,6 @@ Software Foundation raise funds for GNU development.''
111@sp 4 112@sp 4
112@center GNU Emacs Calc Version 2.1 113@center GNU Emacs Calc Version 2.1
113@c [volume] 114@c [volume]
114@sp 1
115@center March 2005
116@sp 5 115@sp 5
117@center Dave Gillespie 116@center Dave Gillespie
118@center daveg@@synaptics.com 117@center daveg@@synaptics.com
@@ -126,7 +125,7 @@ Copyright @copyright{} 1990, 1991, 2001, 2002, 2003, 2004,
126 125
127@c [begin] 126@c [begin]
128@ifinfo 127@ifinfo
129@node Top, , (dir), (dir) 128@node Top, Getting Started, (dir), (dir)
130@chapter The GNU Emacs Calculator 129@chapter The GNU Emacs Calculator
131 130
132@noindent 131@noindent
@@ -145,8 +144,6 @@ longer Info tutorial.)
145 144
146@end ifinfo 145@end ifinfo
147@menu 146@menu
148* Copying:: How you can copy and share Calc.
149
150* Getting Started:: General description and overview. 147* Getting Started:: General description and overview.
151* Interactive Tutorial:: 148* Interactive Tutorial::
152* Tutorial:: A step-by-step introduction for beginners. 149* Tutorial:: A step-by-step introduction for beginners.
@@ -167,7 +164,9 @@ longer Info tutorial.)
167* Embedded Mode:: Working with formulas embedded in a file. 164* Embedded Mode:: Working with formulas embedded in a file.
168* Programming:: Calc as a programmable calculator. 165* Programming:: Calc as a programmable calculator.
169 166
170* Customizing Calc:: Customizing Calc. 167* Copying:: How you can copy and share Calc.
168* GNU Free Documentation License:: The license for this documentation.
169* Customizing Calc:: Customizing Calc.
171* Reporting Bugs:: How to report bugs and make suggestions. 170* Reporting Bugs:: How to report bugs and make suggestions.
172 171
173* Summary:: Summary of Calc commands and functions. 172* Summary:: Summary of Calc commands and functions.
@@ -180,400 +179,7 @@ longer Info tutorial.)
180* Lisp Function Index:: Internal Lisp math functions. 179* Lisp Function Index:: Internal Lisp math functions.
181@end menu 180@end menu
182 181
183@node Copying, Getting Started, Top, Top 182@node Getting Started, Interactive Tutorial, Top, Top
184@unnumbered GNU GENERAL PUBLIC LICENSE
185@center Version 2, June 1991
186
187@c This file is intended to be included in another file.
188
189@display
190Copyright @copyright{} 1989, 1991 Free Software Foundation, Inc.
19151 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
192
193Everyone is permitted to copy and distribute verbatim copies
194of this license document, but changing it is not allowed.
195@end display
196
197@unnumberedsec Preamble
198
199 The licenses for most software are designed to take away your
200freedom to share and change it. By contrast, the GNU General Public
201License is intended to guarantee your freedom to share and change free
202software---to make sure the software is free for all its users. This
203General Public License applies to most of the Free Software
204Foundation's software and to any other program whose authors commit to
205using it. (Some other Free Software Foundation software is covered by
206the GNU Lesser General Public License instead.) You can apply it to
207your programs, too.
208
209 When we speak of free software, we are referring to freedom, not
210price. Our General Public Licenses are designed to make sure that you
211have the freedom to distribute copies of free software (and charge for
212this service if you wish), that you receive source code or can get it
213if you want it, that you can change the software or use pieces of it
214in new free programs; and that you know you can do these things.
215
216 To protect your rights, we need to make restrictions that forbid
217anyone to deny you these rights or to ask you to surrender the rights.
218These restrictions translate to certain responsibilities for you if you
219distribute copies of the software, or if you modify it.
220
221 For example, if you distribute copies of such a program, whether
222gratis or for a fee, you must give the recipients all the rights that
223you have. You must make sure that they, too, receive or can get the
224source code. And you must show them these terms so they know their
225rights.
226
227 We protect your rights with two steps: (1) copyright the software, and
228(2) offer you this license which gives you legal permission to copy,
229distribute and/or modify the software.
230
231 Also, for each author's protection and ours, we want to make certain
232that everyone understands that there is no warranty for this free
233software. If the software is modified by someone else and passed on, we
234want its recipients to know that what they have is not the original, so
235that any problems introduced by others will not reflect on the original
236authors' reputations.
237
238 Finally, any free program is threatened constantly by software
239patents. We wish to avoid the danger that redistributors of a free
240program will individually obtain patent licenses, in effect making the
241program proprietary. To prevent this, we have made it clear that any
242patent must be licensed for everyone's free use or not licensed at all.
243
244 The precise terms and conditions for copying, distribution and
245modification follow.
246
247@iftex
248@unnumberedsec TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
249@end iftex
250@ifinfo
251@center TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
252@end ifinfo
253
254@enumerate 0
255@item
256This License applies to any program or other work which contains
257a notice placed by the copyright holder saying it may be distributed
258under the terms of this General Public License. The ``Program'', below,
259refers to any such program or work, and a ``work based on the Program''
260means either the Program or any derivative work under copyright law:
261that is to say, a work containing the Program or a portion of it,
262either verbatim or with modifications and/or translated into another
263language. (Hereinafter, translation is included without limitation in
264the term ``modification''.) Each licensee is addressed as ``you''.
265
266Activities other than copying, distribution and modification are not
267covered by this License; they are outside its scope. The act of
268running the Program is not restricted, and the output from the Program
269is covered only if its contents constitute a work based on the
270Program (independent of having been made by running the Program).
271Whether that is true depends on what the Program does.
272
273@item
274You may copy and distribute verbatim copies of the Program's
275source code as you receive it, in any medium, provided that you
276conspicuously and appropriately publish on each copy an appropriate
277copyright notice and disclaimer of warranty; keep intact all the
278notices that refer to this License and to the absence of any warranty;
279and give any other recipients of the Program a copy of this License
280along with the Program.
281
282You may charge a fee for the physical act of transferring a copy, and
283you may at your option offer warranty protection in exchange for a fee.
284
285@item
286You may modify your copy or copies of the Program or any portion
287of it, thus forming a work based on the Program, and copy and
288distribute such modifications or work under the terms of Section 1
289above, provided that you also meet all of these conditions:
290
291@enumerate a
292@item
293You must cause the modified files to carry prominent notices
294stating that you changed the files and the date of any change.
295
296@item
297You must cause any work that you distribute or publish, that in
298whole or in part contains or is derived from the Program or any
299part thereof, to be licensed as a whole at no charge to all third
300parties under the terms of this License.
301
302@item
303If the modified program normally reads commands interactively
304when run, you must cause it, when started running for such
305interactive use in the most ordinary way, to print or display an
306announcement including an appropriate copyright notice and a
307notice that there is no warranty (or else, saying that you provide
308a warranty) and that users may redistribute the program under
309these conditions, and telling the user how to view a copy of this
310License. (Exception: if the Program itself is interactive but
311does not normally print such an announcement, your work based on
312the Program is not required to print an announcement.)
313@end enumerate
314
315These requirements apply to the modified work as a whole. If
316identifiable sections of that work are not derived from the Program,
317and can be reasonably considered independent and separate works in
318themselves, then this License, and its terms, do not apply to those
319sections when you distribute them as separate works. But when you
320distribute the same sections as part of a whole which is a work based
321on the Program, the distribution of the whole must be on the terms of
322this License, whose permissions for other licensees extend to the
323entire whole, and thus to each and every part regardless of who wrote it.
324
325Thus, it is not the intent of this section to claim rights or contest
326your rights to work written entirely by you; rather, the intent is to
327exercise the right to control the distribution of derivative or
328collective works based on the Program.
329
330In addition, mere aggregation of another work not based on the Program
331with the Program (or with a work based on the Program) on a volume of
332a storage or distribution medium does not bring the other work under
333the scope of this License.
334
335@item
336You may copy and distribute the Program (or a work based on it,
337under Section 2) in object code or executable form under the terms of
338Sections 1 and 2 above provided that you also do one of the following:
339
340@enumerate a
341@item
342Accompany it with the complete corresponding machine-readable
343source code, which must be distributed under the terms of Sections
3441 and 2 above on a medium customarily used for software interchange; or,
345
346@item
347Accompany it with a written offer, valid for at least three
348years, to give any third party, for a charge no more than your
349cost of physically performing source distribution, a complete
350machine-readable copy of the corresponding source code, to be
351distributed under the terms of Sections 1 and 2 above on a medium
352customarily used for software interchange; or,
353
354@item
355Accompany it with the information you received as to the offer
356to distribute corresponding source code. (This alternative is
357allowed only for noncommercial distribution and only if you
358received the program in object code or executable form with such
359an offer, in accord with Subsection b above.)
360@end enumerate
361
362The source code for a work means the preferred form of the work for
363making modifications to it. For an executable work, complete source
364code means all the source code for all modules it contains, plus any
365associated interface definition files, plus the scripts used to
366control compilation and installation of the executable. However, as a
367special exception, the source code distributed need not include
368anything that is normally distributed (in either source or binary
369form) with the major components (compiler, kernel, and so on) of the
370operating system on which the executable runs, unless that component
371itself accompanies the executable.
372
373If distribution of executable or object code is made by offering
374access to copy from a designated place, then offering equivalent
375access to copy the source code from the same place counts as
376distribution of the source code, even though third parties are not
377compelled to copy the source along with the object code.
378
379@item
380You may not copy, modify, sublicense, or distribute the Program
381except as expressly provided under this License. Any attempt
382otherwise to copy, modify, sublicense or distribute the Program is
383void, and will automatically terminate your rights under this License.
384However, parties who have received copies, or rights, from you under
385this License will not have their licenses terminated so long as such
386parties remain in full compliance.
387
388@item
389You are not required to accept this License, since you have not
390signed it. However, nothing else grants you permission to modify or
391distribute the Program or its derivative works. These actions are
392prohibited by law if you do not accept this License. Therefore, by
393modifying or distributing the Program (or any work based on the
394Program), you indicate your acceptance of this License to do so, and
395all its terms and conditions for copying, distributing or modifying
396the Program or works based on it.
397
398@item
399Each time you redistribute the Program (or any work based on the
400Program), the recipient automatically receives a license from the
401original licensor to copy, distribute or modify the Program subject to
402these terms and conditions. You may not impose any further
403restrictions on the recipients' exercise of the rights granted herein.
404You are not responsible for enforcing compliance by third parties to
405this License.
406
407@item
408If, as a consequence of a court judgment or allegation of patent
409infringement or for any other reason (not limited to patent issues),
410conditions are imposed on you (whether by court order, agreement or
411otherwise) that contradict the conditions of this License, they do not
412excuse you from the conditions of this License. If you cannot
413distribute so as to satisfy simultaneously your obligations under this
414License and any other pertinent obligations, then as a consequence you
415may not distribute the Program at all. For example, if a patent
416license would not permit royalty-free redistribution of the Program by
417all those who receive copies directly or indirectly through you, then
418the only way you could satisfy both it and this License would be to
419refrain entirely from distribution of the Program.
420
421If any portion of this section is held invalid or unenforceable under
422any particular circumstance, the balance of the section is intended to
423apply and the section as a whole is intended to apply in other
424circumstances.
425
426It is not the purpose of this section to induce you to infringe any
427patents or other property right claims or to contest validity of any
428such claims; this section has the sole purpose of protecting the
429integrity of the free software distribution system, which is
430implemented by public license practices. Many people have made
431generous contributions to the wide range of software distributed
432through that system in reliance on consistent application of that
433system; it is up to the author/donor to decide if he or she is willing
434to distribute software through any other system and a licensee cannot
435impose that choice.
436
437This section is intended to make thoroughly clear what is believed to
438be a consequence of the rest of this License.
439
440@item
441If the distribution and/or use of the Program is restricted in
442certain countries either by patents or by copyrighted interfaces, the
443original copyright holder who places the Program under this License
444may add an explicit geographical distribution limitation excluding
445those countries, so that distribution is permitted only in or among
446countries not thus excluded. In such case, this License incorporates
447the limitation as if written in the body of this License.
448
449@item
450The Free Software Foundation may publish revised and/or new versions
451of the General Public License from time to time. Such new versions will
452be similar in spirit to the present version, but may differ in detail to
453address new problems or concerns.
454
455Each version is given a distinguishing version number. If the Program
456specifies a version number of this License which applies to it and ``any
457later version'', you have the option of following the terms and conditions
458either of that version or of any later version published by the Free
459Software Foundation. If the Program does not specify a version number of
460this License, you may choose any version ever published by the Free Software
461Foundation.
462
463@item
464If you wish to incorporate parts of the Program into other free
465programs whose distribution conditions are different, write to the author
466to ask for permission. For software which is copyrighted by the Free
467Software Foundation, write to the Free Software Foundation; we sometimes
468make exceptions for this. Our decision will be guided by the two goals
469of preserving the free status of all derivatives of our free software and
470of promoting the sharing and reuse of software generally.
471
472@iftex
473@heading NO WARRANTY
474@end iftex
475@ifinfo
476@center NO WARRANTY
477@end ifinfo
478
479@item
480BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
481FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
482OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
483PROVIDE THE PROGRAM ``AS IS'' WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
484OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
485MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
486TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
487PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
488REPAIR OR CORRECTION.
489
490@item
491IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
492WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
493REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
494INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
495OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
496TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
497YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
498PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
499POSSIBILITY OF SUCH DAMAGES.
500@end enumerate
501
502@iftex
503@heading END OF TERMS AND CONDITIONS
504@end iftex
505@ifinfo
506@center END OF TERMS AND CONDITIONS
507@end ifinfo
508
509@page
510@unnumberedsec Appendix: How to Apply These Terms to Your New Programs
511
512 If you develop a new program, and you want it to be of the greatest
513possible use to the public, the best way to achieve this is to make it
514free software which everyone can redistribute and change under these terms.
515
516 To do so, attach the following notices to the program. It is safest
517to attach them to the start of each source file to most effectively
518convey the exclusion of warranty; and each file should have at least
519the ``copyright'' line and a pointer to where the full notice is found.
520
521@smallexample
522@var{one line to give the program's name and a brief idea of what it does.}
523Copyright (C) @var{yyyy} @var{name of author}
524
525This program is free software; you can redistribute it and/or modify
526it under the terms of the GNU General Public License as published by
527the Free Software Foundation; either version 2 of the License, or
528(at your option) any later version.
529
530This program is distributed in the hope that it will be useful,
531but WITHOUT ANY WARRANTY; without even the implied warranty of
532MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
533GNU General Public License for more details.
534
535You should have received a copy of the GNU General Public License
536along with this program; if not, write to the Free Software
537Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
538@end smallexample
539
540Also add information on how to contact you by electronic and paper mail.
541
542If the program is interactive, make it output a short notice like this
543when it starts in an interactive mode:
544
545@smallexample
546Gnomovision version 69, Copyright (C) @var{yyyy} @var{name of author}
547Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
548This is free software, and you are welcome to redistribute it
549under certain conditions; type `show c' for details.
550@end smallexample
551
552The hypothetical commands @samp{show w} and @samp{show c} should show
553the appropriate parts of the General Public License. Of course, the
554commands you use may be called something other than @samp{show w} and
555@samp{show c}; they could even be mouse-clicks or menu items---whatever
556suits your program.
557
558You should also get your employer (if you work as a programmer) or your
559school, if any, to sign a ``copyright disclaimer'' for the program, if
560necessary. Here is a sample; alter the names:
561
562@example
563Yoyodyne, Inc., hereby disclaims all copyright interest in the program
564`Gnomovision' (which makes passes at compilers) written by James Hacker.
565
566@var{signature of Ty Coon}, 1 April 1989
567Ty Coon, President of Vice
568@end example
569
570This General Public License does not permit incorporating your program into
571proprietary programs. If your program is a subroutine library, you may
572consider it more useful to permit linking proprietary applications with the
573library. If this is what you want to do, use the GNU Lesser General
574Public License instead of this License.
575
576@node Getting Started, Tutorial, Copying, Top
577@chapter Getting Started 183@chapter Getting Started
578@noindent 184@noindent
579This chapter provides a general overview of Calc, the GNU Emacs 185This chapter provides a general overview of Calc, the GNU Emacs
@@ -1019,7 +625,7 @@ with the file you were editing on top and Calc on the bottom.
1019 625
1020... 626...
1021--**-Emacs: myfile (Fundamental)----All---------------------- 627--**-Emacs: myfile (Fundamental)----All----------------------
1022--- Emacs Calculator Mode --- |Emacs Calc Mode v2.1 ... 628--- Emacs Calculator Mode --- |Emacs Calculator Trail
10232: 17.3 | 17.3 6292: 17.3 | 17.3
10241: -5 | 3 6301: -5 | 3
1025 . | 2 631 . | 2
@@ -1348,7 +954,7 @@ A slope of one-third corresponds to an angle of 18.4349488229 degrees.
1348@c [fix-ref Embedded Mode] 954@c [fix-ref Embedded Mode]
1349@xref{Embedded Mode}, for full details. 955@xref{Embedded Mode}, for full details.
1350 956
1351@node Other C-x * Commands, , Embedded Mode Overview, Using Calc 957@node Other C-x * Commands, , Embedded Mode Overview, Using Calc
1352@subsection Other @kbd{C-x *} Commands 958@subsection Other @kbd{C-x *} Commands
1353 959
1354@noindent 960@noindent
@@ -1514,7 +1120,7 @@ and record them as the current keyboard macro.
1514its initial state: Empty stack, and initial mode settings. 1120its initial state: Empty stack, and initial mode settings.
1515@end table 1121@end table
1516 1122
1517@node History and Acknowledgements, , Using Calc, Getting Started 1123@node History and Acknowledgements, , Using Calc, Getting Started
1518@section History and Acknowledgements 1124@section History and Acknowledgements
1519 1125
1520@noindent 1126@noindent
@@ -1617,7 +1223,7 @@ finished in two weeks.
1617 1223
1618@ifinfo 1224@ifinfo
1619@c This node is accessed by the `C-x * t' command. 1225@c This node is accessed by the `C-x * t' command.
1620@node Interactive Tutorial, , , Top 1226@node Interactive Tutorial, Tutorial, Getting Started, Top
1621@chapter Tutorial 1227@chapter Tutorial
1622 1228
1623@noindent 1229@noindent
@@ -1647,7 +1253,7 @@ Press @kbd{1} now to enter the first section of the Tutorial.
1647@end menu 1253@end menu
1648@end ifinfo 1254@end ifinfo
1649 1255
1650@node Tutorial, Introduction, Getting Started, Top 1256@node Tutorial, Introduction, Interactive Tutorial, Top
1651@chapter Tutorial 1257@chapter Tutorial
1652 1258
1653@noindent 1259@noindent
@@ -2557,7 +2163,7 @@ new number. This works for formulas, vectors, and all other types
2557of values you can put on the stack. The @kbd{`} key also works 2163of values you can put on the stack. The @kbd{`} key also works
2558during entry of a number or algebraic formula. 2164during entry of a number or algebraic formula.
2559 2165
2560@node Modes Tutorial, , Undo Tutorial, Basic Tutorial 2166@node Modes Tutorial, , Undo Tutorial, Basic Tutorial
2561@subsection Mode-Setting Commands 2167@subsection Mode-Setting Commands
2562 2168
2563@noindent 2169@noindent
@@ -3895,7 +3501,7 @@ $$
3895@noindent 3501@noindent
3896@xref{Matrix Answer 3, 3}. (@bullet{}) 3502@xref{Matrix Answer 3, 3}. (@bullet{})
3897 3503
3898@node List Tutorial, , Matrix Tutorial, Vector/Matrix Tutorial 3504@node List Tutorial, , Matrix Tutorial, Vector/Matrix Tutorial
3899@subsection Vectors as Lists 3505@subsection Vectors as Lists
3900 3506
3901@noindent 3507@noindent
@@ -5645,7 +5251,7 @@ details and examples.
5645@c hard exercise: simplify (2^(n r) - 2^(r*(n - 1))) / (2^r - 1) 2^(n - 1) 5251@c hard exercise: simplify (2^(n r) - 2^(r*(n - 1))) / (2^r - 1) 2^(n - 1)
5646@c to 2^((n-1)*(r-1)). 5252@c to 2^((n-1)*(r-1)).
5647 5253
5648@node Rewrites Tutorial, , Basic Algebra Tutorial, Algebra Tutorial 5254@node Rewrites Tutorial, , Basic Algebra Tutorial, Algebra Tutorial
5649@subsection Rewrite Rules 5255@subsection Rewrite Rules
5650 5256
5651@noindent 5257@noindent
@@ -6761,7 +6367,7 @@ The rest of this manual tells the whole story.
6761@c Volume II of this manual, the @dfn{Calc Reference}, tells the whole story. 6367@c Volume II of this manual, the @dfn{Calc Reference}, tells the whole story.
6762 6368
6763@page 6369@page
6764@node Answers to Exercises, , Programming Tutorial, Tutorial 6370@node Answers to Exercises, , Programming Tutorial, Tutorial
6765@section Answers to Exercises 6371@section Answers to Exercises
6766 6372
6767@noindent 6373@noindent
@@ -9949,7 +9555,7 @@ first, because @code{read-kbd-macro} doesn't need to execute the
9949definition as it reads it in. For this reason, @code{C-x * m} is often 9555definition as it reads it in. For this reason, @code{C-x * m} is often
9950the easiest way to create recursive programs in Calc. 9556the easiest way to create recursive programs in Calc.
9951 9557
9952@node Programming Answer 12, , Programming Answer 11, Answers to Exercises 9558@node Programming Answer 12, , Programming Answer 11, Answers to Exercises
9953@subsection Programming Tutorial Exercise 12 9559@subsection Programming Tutorial Exercise 12
9954 9560
9955@noindent 9561@noindent
@@ -10742,7 +10348,7 @@ the stack and mode settings of the buffer being quit as the new defaults.
10742There is only one trail buffer, @samp{*Calc Trail*}, used by all 10348There is only one trail buffer, @samp{*Calc Trail*}, used by all
10743Calculator buffers. 10349Calculator buffers.
10744 10350
10745@node Troubleshooting Commands, , Multiple Calculators, Introduction 10351@node Troubleshooting Commands, , Multiple Calculators, Introduction
10746@section Troubleshooting Commands 10352@section Troubleshooting Commands
10747 10353
10748@noindent 10354@noindent
@@ -10833,7 +10439,7 @@ If you suspect a Calculator cache has become corrupt, you can use the
10833The @kbd{C-x * 0} (with the zero key) command also resets caches along 10439The @kbd{C-x * 0} (with the zero key) command also resets caches along
10834with all other aspects of the Calculator's state. 10440with all other aspects of the Calculator's state.
10835 10441
10836@node Debugging Calc, , Caches, Troubleshooting Commands 10442@node Debugging Calc, , Caches, Troubleshooting Commands
10837@subsection Debugging Calc 10443@subsection Debugging Calc
10838 10444
10839@noindent 10445@noindent
@@ -11910,7 +11516,7 @@ a value into any of these special variables.
11910 11516
11911@xref{Store and Recall}, for a discussion of commands dealing with variables. 11517@xref{Store and Recall}, for a discussion of commands dealing with variables.
11912 11518
11913@node Formulas, , Variables, Data Types 11519@node Formulas, , Variables, Data Types
11914@section Formulas 11520@section Formulas
11915 11521
11916@noindent 11522@noindent
@@ -12356,7 +11962,7 @@ kills the @var{n} lines below or above the selected one.
12356The @kbd{t .} (@code{calc-full-trail-vectors}) command is described 11962The @kbd{t .} (@code{calc-full-trail-vectors}) command is described
12357elsewhere; @pxref{Vector and Matrix Formats}. 11963elsewhere; @pxref{Vector and Matrix Formats}.
12358 11964
12359@node Keep Arguments, , Trail Commands, Stack and Trail 11965@node Keep Arguments, , Trail Commands, Stack and Trail
12360@section Keep Arguments 11966@section Keep Arguments
12361 11967
12362@noindent 11968@noindent
@@ -12858,7 +12464,7 @@ To update @samp{=>} operators in an Embedded buffer while
12858automatic recomputation is off, use @w{@kbd{C-x * u}}. 12464automatic recomputation is off, use @w{@kbd{C-x * u}}.
12859@xref{Embedded Mode}. 12465@xref{Embedded Mode}.
12860 12466
12861@node Working Message, , Automatic Recomputation, Calculation Modes 12467@node Working Message, , Automatic Recomputation, Calculation Modes
12862@subsection Working Messages 12468@subsection Working Messages
12863 12469
12864@noindent 12470@noindent
@@ -13239,7 +12845,7 @@ using a variable for a new purpose, it is best to use @kbd{s d}
13239or @kbd{s D} to check to make sure you don't still have an old 12845or @kbd{s D} to check to make sure you don't still have an old
13240declaration for the variable that will conflict with its new meaning. 12846declaration for the variable that will conflict with its new meaning.
13241 12847
13242@node Functions for Declarations, , Kinds of Declarations, Declarations 12848@node Functions for Declarations, , Kinds of Declarations, Declarations
13243@subsection Functions for Declarations 12849@subsection Functions for Declarations
13244 12850
13245@noindent 12851@noindent
@@ -13939,7 +13545,7 @@ minus sign on the year value.
13939If you always enter a four-digit year, and use a name instead 13545If you always enter a four-digit year, and use a name instead
13940of a number for the month, there is no danger of ambiguity. 13546of a number for the month, there is no danger of ambiguity.
13941 13547
13942@node Standard Date Formats, , Free-Form Dates, Date Formats 13548@node Standard Date Formats, , Free-Form Dates, Date Formats
13943@subsubsection Standard Date Formats 13549@subsubsection Standard Date Formats
13944 13550
13945@noindent 13551@noindent
@@ -14074,7 +13680,7 @@ when positioning by explicit origins and widths. In the latter
14074case, the display is formatted as specified, and then uniformly 13680case, the display is formatted as specified, and then uniformly
14075shifted over four spaces to fit the line numbers. 13681shifted over four spaces to fit the line numbers.
14076 13682
14077@node Labels, , Justification, Display Modes 13683@node Labels, , Justification, Display Modes
14078@subsection Labels 13684@subsection Labels
14079 13685
14080@noindent 13686@noindent
@@ -15365,7 +14971,7 @@ For @samp{a / b} in Big mode, @code{cascent} returns 2 and @code{cdescent}
15365returns 1. The only formula for which @code{cascent} will return zero 14971returns 1. The only formula for which @code{cascent} will return zero
15366is @samp{cvspace(0)} or equivalents. 14972is @samp{cvspace(0)} or equivalents.
15367 14973
15368@node User-Defined Compositions, , Information about Compositions, Compositions 14974@node User-Defined Compositions, , Information about Compositions, Compositions
15369@subsubsection User-Defined Compositions 14975@subsubsection User-Defined Compositions
15370 14976
15371@noindent 14977@noindent
@@ -15496,7 +15102,7 @@ produce a large, unwieldy integer.
15496You can save your display formats permanently using the @kbd{Z P} 15102You can save your display formats permanently using the @kbd{Z P}
15497command (@pxref{Creating User Keys}). 15103command (@pxref{Creating User Keys}).
15498 15104
15499@node Syntax Tables, , Compositions, Language Modes 15105@node Syntax Tables, , Compositions, Language Modes
15500@subsection Syntax Tables 15106@subsection Syntax Tables
15501 15107
15502@noindent 15108@noindent
@@ -15829,7 +15435,7 @@ backs up and tries the other alternative. Thus Calc has ``partial''
15829backtracking. A fully backtracking parser would go on to make sure 15435backtracking. A fully backtracking parser would go on to make sure
15830the rest of the pattern matched before finalizing the choice. 15436the rest of the pattern matched before finalizing the choice.
15831 15437
15832@node Conditional Syntax Rules, , Advanced Syntax Patterns, Syntax Tables 15438@node Conditional Syntax Rules, , Advanced Syntax Patterns, Syntax Tables
15833@subsubsection Conditional Syntax Rules 15439@subsubsection Conditional Syntax Rules
15834 15440
15835@noindent 15441@noindent
@@ -16005,7 +15611,7 @@ would not work for fixed-point mode, but it wouldn't be hard to
16005do a full emulation with the help of the @kbd{Z [} and @kbd{Z ]} 15611do a full emulation with the help of the @kbd{Z [} and @kbd{Z ]}
16006programming commands. @xref{Conditionals in Macros}.) 15612programming commands. @xref{Conditionals in Macros}.)
16007 15613
16008@node Calc Mode Line, , Modes Variable, Mode Settings 15614@node Calc Mode Line, , Modes Variable, Mode Settings
16009@section The Calc Mode Line 15615@section The Calc Mode Line
16010 15616
16011@noindent 15617@noindent
@@ -16366,20 +15972,24 @@ whereas @w{@samp{[-2 ..@: 3] ^ 2}} is @samp{[0 ..@: 9]}.
16366@mindex @null 15972@mindex @null
16367@end ignore 15973@end ignore
16368@tindex / 15974@tindex /
16369The @kbd{/} (@code{calc-divide}) command divides two numbers. When 15975The @kbd{/} (@code{calc-divide}) command divides two numbers. Note that
16370dividing a scalar @expr{B} by a square matrix @expr{A}, the computation 15976when using algebraic entry, @samp{/} has lower precedence than @samp{*},
16371performed is @expr{B} times the inverse of @expr{A}. This also occurs 15977so that @samp{a/b*c} is interpreted as @samp{a/(b*c)}.
16372if @expr{B} is itself a vector or matrix, in which case the effect is 15978
16373to solve the set of linear equations represented by @expr{B}. If @expr{B} 15979When dividing a scalar @expr{B} by a square matrix @expr{A}, the
16374is a matrix with the same number of rows as @expr{A}, or a plain vector 15980computation performed is @expr{B} times the inverse of @expr{A}. This
16375(which is interpreted here as a column vector), then the equation 15981also occurs if @expr{B} is itself a vector or matrix, in which case the
16376@expr{A X = B} is solved for the vector or matrix @expr{X}. Otherwise, 15982effect is to solve the set of linear equations represented by @expr{B}.
16377if @expr{B} is a non-square matrix with the same number of @emph{columns} 15983If @expr{B} is a matrix with the same number of rows as @expr{A}, or a
16378as @expr{A}, the equation @expr{X A = B} is solved. If you wish a vector 15984plain vector (which is interpreted here as a column vector), then the
16379@expr{B} to be interpreted as a row vector to be solved as @expr{X A = B}, 15985equation @expr{A X = B} is solved for the vector or matrix @expr{X}.
16380make it into a one-row matrix with @kbd{C-u 1 v p} first. To force a 15986Otherwise, if @expr{B} is a non-square matrix with the same number of
16381left-handed solution with a square matrix @expr{B}, transpose @expr{A} and 15987@emph{columns} as @expr{A}, the equation @expr{X A = B} is solved. If
16382@expr{B} before dividing, then transpose the result. 15988you wish a vector @expr{B} to be interpreted as a row vector to be
15989solved as @expr{X A = B}, make it into a one-row matrix with @kbd{C-u 1
15990v p} first. To force a left-handed solution with a square matrix
15991@expr{B}, transpose @expr{A} and @expr{B} before dividing, then
15992transpose the result.
16383 15993
16384HMS forms can be divided by real numbers or by other HMS forms. Error 15994HMS forms can be divided by real numbers or by other HMS forms. Error
16385forms can be divided in any combination of ways. Modulo forms where both 15995forms can be divided in any combination of ways. Modulo forms where both
@@ -17363,7 +16973,7 @@ any date form and returns 1 if that date falls on a weekend or
17363holiday, as defined in @code{Holidays}, or 0 if the date is a 16973holiday, as defined in @code{Holidays}, or 0 if the date is a
17364business day. 16974business day.
17365 16975
17366@node Time Zones, , Business Days, Date Arithmetic 16976@node Time Zones, , Business Days, Date Arithmetic
17367@subsection Time Zones 16977@subsection Time Zones
17368 16978
17369@noindent 16979@noindent
@@ -18010,7 +17620,7 @@ Summing columns with @kbd{V R : +} yields @expr{[10000, 10000, 10000]};
18010the total depreciation in any method is (by definition) the 17620the total depreciation in any method is (by definition) the
18011difference between the cost and the salvage value. 17621difference between the cost and the salvage value.
18012 17622
18013@node Definitions of Financial Functions, , Depreciation Functions, Financial Functions 17623@node Definitions of Financial Functions, , Depreciation Functions, Financial Functions
18014@subsection Definitions 17624@subsection Definitions
18015 17625
18016@noindent 17626@noindent
@@ -18165,7 +17775,7 @@ and the depreciation is zero for all subsequent periods. The @code{ddb}
18165function returns the amount the book value decreased in the specified 17775function returns the amount the book value decreased in the specified
18166period. 17776period.
18167 17777
18168@node Binary Functions, , Financial Functions, Arithmetic 17778@node Binary Functions, , Financial Functions, Arithmetic
18169@section Binary Number Functions 17779@section Binary Number Functions
18170 17780
18171@noindent 17781@noindent
@@ -19096,7 +18706,7 @@ elements of this vector. @xref{Matrix Functions}.
19096* Random Number Generator:: (Complete description of Calc's algorithm) 18706* Random Number Generator:: (Complete description of Calc's algorithm)
19097@end menu 18707@end menu
19098 18708
19099@node Random Number Generator, , Random Numbers, Random Numbers 18709@node Random Number Generator, , Random Numbers, Random Numbers
19100@subsection Random Number Generator 18710@subsection Random Number Generator
19101 18711
19102Calc's random number generator uses several methods to ensure that 18712Calc's random number generator uses several methods to ensure that
@@ -19412,7 +19022,7 @@ distinct factors, this is @expr{(-1)^k}. If the input number has any
19412duplicate factors (i.e., can be divided by the same prime more than once), 19022duplicate factors (i.e., can be divided by the same prime more than once),
19413the result is zero. 19023the result is zero.
19414 19024
19415@node Probability Distribution Functions, , Combinatorial Functions, Scientific Functions 19025@node Probability Distribution Functions, , Combinatorial Functions, Scientific Functions
19416@section Probability Distribution Functions 19026@section Probability Distribution Functions
19417 19027
19418@noindent 19028@noindent
@@ -20862,7 +20472,7 @@ arguments, interpreted in the same way as the other functions
20862in this section. For example, @samp{vflat(1, [2, [3, 4]], 5)} 20472in this section. For example, @samp{vflat(1, [2, [3, 4]], 5)}
20863returns @samp{[1, 2, 3, 4, 5]}. 20473returns @samp{[1, 2, 3, 4, 5]}.
20864 20474
20865@node Paired-Sample Statistics, , Single-Variable Statistics, Statistical Operations 20475@node Paired-Sample Statistics, , Single-Variable Statistics, Statistical Operations
20866@subsection Paired-Sample Statistics 20476@subsection Paired-Sample Statistics
20867 20477
20868@noindent 20478@noindent
@@ -21354,7 +20964,7 @@ computes the square root of @samp{A} given the initial guess @samp{B},
21354stopping when the result is correct within the specified tolerance, or 20964stopping when the result is correct within the specified tolerance, or
21355when 20 steps have been taken, whichever is sooner. 20965when 20 steps have been taken, whichever is sooner.
21356 20966
21357@node Generalized Products, , Nesting and Fixed Points, Reducing and Mapping 20967@node Generalized Products, , Nesting and Fixed Points, Reducing and Mapping
21358@subsection Generalized Products 20968@subsection Generalized Products
21359 20969
21360@kindex V O 20970@kindex V O
@@ -21389,7 +20999,7 @@ use @kbd{$} twice to take both operator formulas from the stack, the
21389first (multiplicative) operator is taken from the top of the stack 20999first (multiplicative) operator is taken from the top of the stack
21390and the second (additive) operator is taken from second-to-top. 21000and the second (additive) operator is taken from second-to-top.
21391 21001
21392@node Vector and Matrix Formats, , Reducing and Mapping, Matrix Functions 21002@node Vector and Matrix Formats, , Reducing and Mapping, Matrix Functions
21393@section Vector and Matrix Display Formats 21003@section Vector and Matrix Display Formats
21394 21004
21395@noindent 21005@noindent
@@ -22010,7 +21620,7 @@ to be simplified.
22010@end group 21620@end group
22011@end smallexample 21621@end smallexample
22012 21622
22013@node Rearranging with Selections, , Operating on Selections, Selecting Subformulas 21623@node Rearranging with Selections, , Operating on Selections, Selecting Subformulas
22014@subsection Rearranging Formulas using Selections 21624@subsection Rearranging Formulas using Selections
22015 21625
22016@noindent 21626@noindent
@@ -23108,7 +22718,7 @@ on whether you believe @expr{x} is positive or negative).
23108The @kbd{a M /} command can be used to divide a factor out of 22718The @kbd{a M /} command can be used to divide a factor out of
23109both sides of an inequality. 22719both sides of an inequality.
23110 22720
23111@node Simplification of Units, , Unsafe Simplifications, Simplifying Formulas 22721@node Simplification of Units, , Unsafe Simplifications, Simplifying Formulas
23112@subsection Simplification of Units 22722@subsection Simplification of Units
23113 22723
23114@noindent 22724@noindent
@@ -23742,7 +23352,7 @@ The integral of @samp{1/sqrt(x)} from 0 to 1 exists (it can be found
23742by Calc's symbolic integrator, for example), but @kbd{a I} will fail 23352by Calc's symbolic integrator, for example), but @kbd{a I} will fail
23743because the integrand goes to infinity at one of the endpoints. 23353because the integrand goes to infinity at one of the endpoints.
23744 23354
23745@node Taylor Series, , Numerical Integration, Calculus 23355@node Taylor Series, , Numerical Integration, Calculus
23746@subsection Taylor Series 23356@subsection Taylor Series
23747 23357
23748@noindent 23358@noindent
@@ -23988,7 +23598,7 @@ Another way to deal with certain kinds of overdetermined systems of
23988equations is the @kbd{a F} command, which does least-squares fitting 23598equations is the @kbd{a F} command, which does least-squares fitting
23989to satisfy the equations. @xref{Curve Fitting}. 23599to satisfy the equations. @xref{Curve Fitting}.
23990 23600
23991@node Decomposing Polynomials, , Solving Systems of Equations, Solving Equations 23601@node Decomposing Polynomials, , Solving Systems of Equations, Solving Equations
23992@subsection Decomposing Polynomials 23602@subsection Decomposing Polynomials
23993 23603
23994@noindent 23604@noindent
@@ -24299,7 +23909,7 @@ the initial guess is a complex number the variable will be minimized
24299over the complex numbers; if it is real or an interval it will 23909over the complex numbers; if it is real or an interval it will
24300be minimized over the reals. 23910be minimized over the reals.
24301 23911
24302@node Numerical Systems of Equations, , Minimization, Numerical Solutions 23912@node Numerical Systems of Equations, , Minimization, Numerical Solutions
24303@subsection Systems of Equations 23913@subsection Systems of Equations
24304 23914
24305@noindent 23915@noindent
@@ -25347,7 +24957,7 @@ linearizer was unable to put the model into the required form.
25347The @code{efit} (corresponding to @kbd{H a F}) and @code{xfit} 24957The @code{efit} (corresponding to @kbd{H a F}) and @code{xfit}
25348(for @kbd{I a F}) functions are completely analogous. 24958(for @kbd{I a F}) functions are completely analogous.
25349 24959
25350@node Interpolation, , Curve Fitting Details, Curve Fitting 24960@node Interpolation, , Curve Fitting Details, Curve Fitting
25351@subsection Polynomial Interpolation 24961@subsection Polynomial Interpolation
25352 24962
25353@kindex a p 24963@kindex a p
@@ -25944,7 +25554,7 @@ declarations are used when deciding whether a formula is true;
25944it returns 0 when @code{dnonzero} would return 0 or leave itself 25554it returns 0 when @code{dnonzero} would return 0 or leave itself
25945in symbolic form.) 25555in symbolic form.)
25946 25556
25947@node Rewrite Rules, , Logical Operations, Algebra 25557@node Rewrite Rules, , Logical Operations, Algebra
25948@section Rewrite Rules 25558@section Rewrite Rules
25949 25559
25950@noindent 25560@noindent
@@ -27611,7 +27221,7 @@ buffer (with @kbd{C-x k *Trace* @key{RET}}). If you leave it in
27611existence and forget about it, all your future rewrite commands will 27221existence and forget about it, all your future rewrite commands will
27612be needlessly slow. 27222be needlessly slow.
27613 27223
27614@node Examples of Rewrite Rules, , Debugging Rewrites, Rewrite Rules 27224@node Examples of Rewrite Rules, , Debugging Rewrites, Rewrite Rules
27615@subsection Examples of Rewrite Rules 27225@subsection Examples of Rewrite Rules
27616 27226
27617@noindent 27227@noindent
@@ -28033,7 +27643,7 @@ really is unitless.)
28033 27643
28034@c Describe angular units, luminosity vs. steradians problem. 27644@c Describe angular units, luminosity vs. steradians problem.
28035 27645
28036@node User-Defined Units, , Predefined Units, Units 27646@node User-Defined Units, , Predefined Units, Units
28037@section User-Defined Units 27647@section User-Defined Units
28038 27648
28039@noindent 27649@noindent
@@ -28577,7 +28187,7 @@ example, letting @expr{n=2} in @samp{f(n pi)} with @kbd{a b} will
28577produce @samp{f(2 pi)}, whereas @kbd{s l} would give @samp{f(6.28)} 28187produce @samp{f(2 pi)}, whereas @kbd{s l} would give @samp{f(6.28)}
28578since the evaluation step will also evaluate @code{pi}. 28188since the evaluation step will also evaluate @code{pi}.
28579 28189
28580@node Evaluates-To Operator, , Let Command, Store and Recall 28190@node Evaluates-To Operator, , Let Command, Store and Recall
28581@section The Evaluates-To Operator 28191@section The Evaluates-To Operator
28582 28192
28583@noindent 28193@noindent
@@ -29210,7 +28820,7 @@ lines, and the third curve to have lines in style 3. Point styles will
29210still be assigned automatically, but you could store another vector in 28820still be assigned automatically, but you could store another vector in
29211@code{PointStyles} to define them, too. 28821@code{PointStyles} to define them, too.
29212 28822
29213@node Devices, , Graphics Options, Graphics 28823@node Devices, , Graphics Options, Graphics
29214@section Graphical Devices 28824@section Graphical Devices
29215 28825
29216@noindent 28826@noindent
@@ -29641,7 +29251,7 @@ The @kbd{C-x * y} key sequence is equivalent to @kbd{y} except that
29641it can be typed anywhere, not just in Calc. This provides an easy 29251it can be typed anywhere, not just in Calc. This provides an easy
29642way to guarantee that Calc knows which editing buffer you want to use! 29252way to guarantee that Calc knows which editing buffer you want to use!
29643 29253
29644@node X Cut and Paste, , Yanking Into Buffers, Kill and Yank 29254@node X Cut and Paste, , Yanking Into Buffers, Kill and Yank
29645@section X Cut and Paste 29255@section X Cut and Paste
29646 29256
29647@noindent 29257@noindent
@@ -30011,7 +29621,7 @@ With @key{INV}, @key{HYP}, or @key{INV} and @key{HYP}, the
30011@kbd{"x"} key pushes the variable names @expr{y}, @expr{z}, and 29621@kbd{"x"} key pushes the variable names @expr{y}, @expr{z}, and
30012@expr{t}, respectively. 29622@expr{t}, respectively.
30013 29623
30014@node Keypad Modes Menu, , Keypad Vectors Menu, Keypad Mode 29624@node Keypad Modes Menu, , Keypad Vectors Menu, Keypad Mode
30015@section Modes Menu 29625@section Modes Menu
30016 29626
30017@smallexample 29627@smallexample
@@ -30803,7 +30413,7 @@ annotations at all.
30803When Embedded mode is not enabled, mode-recording modes except 30413When Embedded mode is not enabled, mode-recording modes except
30804for @code{Save} have no effect. 30414for @code{Save} have no effect.
30805 30415
30806@node Customizing Embedded Mode, , Mode Settings in Embedded Mode, Embedded Mode 30416@node Customizing Embedded Mode, , Mode Settings in Embedded Mode, Embedded Mode
30807@section Customizing Embedded Mode 30417@section Customizing Embedded Mode
30808 30418
30809@noindent 30419@noindent
@@ -30957,7 +30567,7 @@ is simply a newline, @code{"\n"}, but may be different for different
30957major modes. If you change this, it is a good idea still to end with a 30567major modes. If you change this, it is a good idea still to end with a
30958newline so that mode annotations will appear on lines by themselves. 30568newline so that mode annotations will appear on lines by themselves.
30959 30569
30960@node Programming, Customizing Calc, Embedded Mode, Top 30570@node Programming, Copying, Embedded Mode, Top
30961@chapter Programming 30571@chapter Programming
30962 30572
30963@noindent 30573@noindent
@@ -31410,7 +31020,7 @@ The contents of the stack and trail, values of non-quick variables, and
31410other settings such as the language mode and the various display modes, 31020other settings such as the language mode and the various display modes,
31411are @emph{not} affected by @kbd{Z `} and @kbd{Z '}. 31021are @emph{not} affected by @kbd{Z `} and @kbd{Z '}.
31412 31022
31413@node Queries in Macros, , Local Values in Macros, Keyboard Macros 31023@node Queries in Macros, , Local Values in Macros, Keyboard Macros
31414@subsection Queries in Keyboard Macros 31024@subsection Queries in Keyboard Macros
31415 31025
31416@c @noindent 31026@c @noindent
@@ -31595,7 +31205,7 @@ default simplifications cures this problem: The definition will be stored
31595in symbolic form without ever activating the @code{deriv} function. Press 31205in symbolic form without ever activating the @code{deriv} function. Press
31596@kbd{m D} to turn the default simplifications back on afterwards. 31206@kbd{m D} to turn the default simplifications back on afterwards.
31597 31207
31598@node Lisp Definitions, , Algebraic Definitions, Programming 31208@node Lisp Definitions, , Algebraic Definitions, Programming
31599@section Programming with Lisp 31209@section Programming with Lisp
31600 31210
31601@noindent 31211@noindent
@@ -32300,7 +31910,7 @@ actually they are less efficient because each operation is really
32300a division by 512 in disguise; @code{idivmod} allows us to do the 31910a division by 512 in disguise; @code{idivmod} allows us to do the
32301same thing with a single division by 512. 31911same thing with a single division by 512.
32302 31912
32303@node Sine Example, , Bit Counting Example, Example Definitions 31913@node Sine Example, , Bit Counting Example, Example Definitions
32304@subsubsection The Sine Function 31914@subsubsection The Sine Function
32305 31915
32306@noindent 31916@noindent
@@ -32780,7 +32390,7 @@ Note the use of @code{insert-before-markers} when changing between
32780``F'' and ``C'', so that the character winds up before the cursor 32390``F'' and ``C'', so that the character winds up before the cursor
32781instead of after it. 32391instead of after it.
32782 32392
32783@node Internals, , Calling Calc from Your Programs, Lisp Definitions 32393@node Internals, , Calling Calc from Your Programs, Lisp Definitions
32784@subsection Calculator Internals 32394@subsection Calculator Internals
32785 32395
32786@noindent 32396@noindent
@@ -34672,7 +34282,7 @@ If composition @var{c} is a ``flat'' composition, return the last
34672@comment @noindent 34282@comment @noindent
34673@comment (This section is currently unfinished.) 34283@comment (This section is currently unfinished.)
34674 34284
34675@node Hooks, , Formatting Lisp Functions, Internals 34285@node Hooks, , Formatting Lisp Functions, Internals
34676@subsubsection Hooks 34286@subsubsection Hooks
34677 34287
34678@noindent 34288@noindent
@@ -34836,7 +34446,404 @@ used the first time, your hook should add a variable to the
34836list and also call @code{make-local-variable} itself. 34446list and also call @code{make-local-variable} itself.
34837@end defvar 34447@end defvar
34838 34448
34839@node Customizing Calc, Reporting Bugs, Programming, Top 34449@node Copying, GNU Free Documentation License, Programming, Top
34450@appendix GNU GENERAL PUBLIC LICENSE
34451@center Version 2, June 1991
34452
34453@c This file is intended to be included in another file.
34454
34455@display
34456Copyright @copyright{} 1989, 1991 Free Software Foundation, Inc.
3445751 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
34458
34459Everyone is permitted to copy and distribute verbatim copies
34460of this license document, but changing it is not allowed.
34461@end display
34462
34463@unnumberedsec Preamble
34464
34465 The licenses for most software are designed to take away your
34466freedom to share and change it. By contrast, the GNU General Public
34467License is intended to guarantee your freedom to share and change free
34468software---to make sure the software is free for all its users. This
34469General Public License applies to most of the Free Software
34470Foundation's software and to any other program whose authors commit to
34471using it. (Some other Free Software Foundation software is covered by
34472the GNU Lesser General Public License instead.) You can apply it to
34473your programs, too.
34474
34475 When we speak of free software, we are referring to freedom, not
34476price. Our General Public Licenses are designed to make sure that you
34477have the freedom to distribute copies of free software (and charge for
34478this service if you wish), that you receive source code or can get it
34479if you want it, that you can change the software or use pieces of it
34480in new free programs; and that you know you can do these things.
34481
34482 To protect your rights, we need to make restrictions that forbid
34483anyone to deny you these rights or to ask you to surrender the rights.
34484These restrictions translate to certain responsibilities for you if you
34485distribute copies of the software, or if you modify it.
34486
34487 For example, if you distribute copies of such a program, whether
34488gratis or for a fee, you must give the recipients all the rights that
34489you have. You must make sure that they, too, receive or can get the
34490source code. And you must show them these terms so they know their
34491rights.
34492
34493 We protect your rights with two steps: (1) copyright the software, and
34494(2) offer you this license which gives you legal permission to copy,
34495distribute and/or modify the software.
34496
34497 Also, for each author's protection and ours, we want to make certain
34498that everyone understands that there is no warranty for this free
34499software. If the software is modified by someone else and passed on, we
34500want its recipients to know that what they have is not the original, so
34501that any problems introduced by others will not reflect on the original
34502authors' reputations.
34503
34504 Finally, any free program is threatened constantly by software
34505patents. We wish to avoid the danger that redistributors of a free
34506program will individually obtain patent licenses, in effect making the
34507program proprietary. To prevent this, we have made it clear that any
34508patent must be licensed for everyone's free use or not licensed at all.
34509
34510 The precise terms and conditions for copying, distribution and
34511modification follow.
34512
34513@iftex
34514@unnumberedsec TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
34515@end iftex
34516@ifinfo
34517@center TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
34518@end ifinfo
34519
34520@enumerate 0
34521@item
34522This License applies to any program or other work which contains
34523a notice placed by the copyright holder saying it may be distributed
34524under the terms of this General Public License. The ``Program'', below,
34525refers to any such program or work, and a ``work based on the Program''
34526means either the Program or any derivative work under copyright law:
34527that is to say, a work containing the Program or a portion of it,
34528either verbatim or with modifications and/or translated into another
34529language. (Hereinafter, translation is included without limitation in
34530the term ``modification''.) Each licensee is addressed as ``you''.
34531
34532Activities other than copying, distribution and modification are not
34533covered by this License; they are outside its scope. The act of
34534running the Program is not restricted, and the output from the Program
34535is covered only if its contents constitute a work based on the
34536Program (independent of having been made by running the Program).
34537Whether that is true depends on what the Program does.
34538
34539@item
34540You may copy and distribute verbatim copies of the Program's
34541source code as you receive it, in any medium, provided that you
34542conspicuously and appropriately publish on each copy an appropriate
34543copyright notice and disclaimer of warranty; keep intact all the
34544notices that refer to this License and to the absence of any warranty;
34545and give any other recipients of the Program a copy of this License
34546along with the Program.
34547
34548You may charge a fee for the physical act of transferring a copy, and
34549you may at your option offer warranty protection in exchange for a fee.
34550
34551@item
34552You may modify your copy or copies of the Program or any portion
34553of it, thus forming a work based on the Program, and copy and
34554distribute such modifications or work under the terms of Section 1
34555above, provided that you also meet all of these conditions:
34556
34557@enumerate a
34558@item
34559You must cause the modified files to carry prominent notices
34560stating that you changed the files and the date of any change.
34561
34562@item
34563You must cause any work that you distribute or publish, that in
34564whole or in part contains or is derived from the Program or any
34565part thereof, to be licensed as a whole at no charge to all third
34566parties under the terms of this License.
34567
34568@item
34569If the modified program normally reads commands interactively
34570when run, you must cause it, when started running for such
34571interactive use in the most ordinary way, to print or display an
34572announcement including an appropriate copyright notice and a
34573notice that there is no warranty (or else, saying that you provide
34574a warranty) and that users may redistribute the program under
34575these conditions, and telling the user how to view a copy of this
34576License. (Exception: if the Program itself is interactive but
34577does not normally print such an announcement, your work based on
34578the Program is not required to print an announcement.)
34579@end enumerate
34580
34581These requirements apply to the modified work as a whole. If
34582identifiable sections of that work are not derived from the Program,
34583and can be reasonably considered independent and separate works in
34584themselves, then this License, and its terms, do not apply to those
34585sections when you distribute them as separate works. But when you
34586distribute the same sections as part of a whole which is a work based
34587on the Program, the distribution of the whole must be on the terms of
34588this License, whose permissions for other licensees extend to the
34589entire whole, and thus to each and every part regardless of who wrote it.
34590
34591Thus, it is not the intent of this section to claim rights or contest
34592your rights to work written entirely by you; rather, the intent is to
34593exercise the right to control the distribution of derivative or
34594collective works based on the Program.
34595
34596In addition, mere aggregation of another work not based on the Program
34597with the Program (or with a work based on the Program) on a volume of
34598a storage or distribution medium does not bring the other work under
34599the scope of this License.
34600
34601@item
34602You may copy and distribute the Program (or a work based on it,
34603under Section 2) in object code or executable form under the terms of
34604Sections 1 and 2 above provided that you also do one of the following:
34605
34606@enumerate a
34607@item
34608Accompany it with the complete corresponding machine-readable
34609source code, which must be distributed under the terms of Sections
346101 and 2 above on a medium customarily used for software interchange; or,
34611
34612@item
34613Accompany it with a written offer, valid for at least three
34614years, to give any third party, for a charge no more than your
34615cost of physically performing source distribution, a complete
34616machine-readable copy of the corresponding source code, to be
34617distributed under the terms of Sections 1 and 2 above on a medium
34618customarily used for software interchange; or,
34619
34620@item
34621Accompany it with the information you received as to the offer
34622to distribute corresponding source code. (This alternative is
34623allowed only for noncommercial distribution and only if you
34624received the program in object code or executable form with such
34625an offer, in accord with Subsection b above.)
34626@end enumerate
34627
34628The source code for a work means the preferred form of the work for
34629making modifications to it. For an executable work, complete source
34630code means all the source code for all modules it contains, plus any
34631associated interface definition files, plus the scripts used to
34632control compilation and installation of the executable. However, as a
34633special exception, the source code distributed need not include
34634anything that is normally distributed (in either source or binary
34635form) with the major components (compiler, kernel, and so on) of the
34636operating system on which the executable runs, unless that component
34637itself accompanies the executable.
34638
34639If distribution of executable or object code is made by offering
34640access to copy from a designated place, then offering equivalent
34641access to copy the source code from the same place counts as
34642distribution of the source code, even though third parties are not
34643compelled to copy the source along with the object code.
34644
34645@item
34646You may not copy, modify, sublicense, or distribute the Program
34647except as expressly provided under this License. Any attempt
34648otherwise to copy, modify, sublicense or distribute the Program is
34649void, and will automatically terminate your rights under this License.
34650However, parties who have received copies, or rights, from you under
34651this License will not have their licenses terminated so long as such
34652parties remain in full compliance.
34653
34654@item
34655You are not required to accept this License, since you have not
34656signed it. However, nothing else grants you permission to modify or
34657distribute the Program or its derivative works. These actions are
34658prohibited by law if you do not accept this License. Therefore, by
34659modifying or distributing the Program (or any work based on the
34660Program), you indicate your acceptance of this License to do so, and
34661all its terms and conditions for copying, distributing or modifying
34662the Program or works based on it.
34663
34664@item
34665Each time you redistribute the Program (or any work based on the
34666Program), the recipient automatically receives a license from the
34667original licensor to copy, distribute or modify the Program subject to
34668these terms and conditions. You may not impose any further
34669restrictions on the recipients' exercise of the rights granted herein.
34670You are not responsible for enforcing compliance by third parties to
34671this License.
34672
34673@item
34674If, as a consequence of a court judgment or allegation of patent
34675infringement or for any other reason (not limited to patent issues),
34676conditions are imposed on you (whether by court order, agreement or
34677otherwise) that contradict the conditions of this License, they do not
34678excuse you from the conditions of this License. If you cannot
34679distribute so as to satisfy simultaneously your obligations under this
34680License and any other pertinent obligations, then as a consequence you
34681may not distribute the Program at all. For example, if a patent
34682license would not permit royalty-free redistribution of the Program by
34683all those who receive copies directly or indirectly through you, then
34684the only way you could satisfy both it and this License would be to
34685refrain entirely from distribution of the Program.
34686
34687If any portion of this section is held invalid or unenforceable under
34688any particular circumstance, the balance of the section is intended to
34689apply and the section as a whole is intended to apply in other
34690circumstances.
34691
34692It is not the purpose of this section to induce you to infringe any
34693patents or other property right claims or to contest validity of any
34694such claims; this section has the sole purpose of protecting the
34695integrity of the free software distribution system, which is
34696implemented by public license practices. Many people have made
34697generous contributions to the wide range of software distributed
34698through that system in reliance on consistent application of that
34699system; it is up to the author/donor to decide if he or she is willing
34700to distribute software through any other system and a licensee cannot
34701impose that choice.
34702
34703This section is intended to make thoroughly clear what is believed to
34704be a consequence of the rest of this License.
34705
34706@item
34707If the distribution and/or use of the Program is restricted in
34708certain countries either by patents or by copyrighted interfaces, the
34709original copyright holder who places the Program under this License
34710may add an explicit geographical distribution limitation excluding
34711those countries, so that distribution is permitted only in or among
34712countries not thus excluded. In such case, this License incorporates
34713the limitation as if written in the body of this License.
34714
34715@item
34716The Free Software Foundation may publish revised and/or new versions
34717of the General Public License from time to time. Such new versions will
34718be similar in spirit to the present version, but may differ in detail to
34719address new problems or concerns.
34720
34721Each version is given a distinguishing version number. If the Program
34722specifies a version number of this License which applies to it and ``any
34723later version'', you have the option of following the terms and conditions
34724either of that version or of any later version published by the Free
34725Software Foundation. If the Program does not specify a version number of
34726this License, you may choose any version ever published by the Free Software
34727Foundation.
34728
34729@item
34730If you wish to incorporate parts of the Program into other free
34731programs whose distribution conditions are different, write to the author
34732to ask for permission. For software which is copyrighted by the Free
34733Software Foundation, write to the Free Software Foundation; we sometimes
34734make exceptions for this. Our decision will be guided by the two goals
34735of preserving the free status of all derivatives of our free software and
34736of promoting the sharing and reuse of software generally.
34737
34738@iftex
34739@heading NO WARRANTY
34740@end iftex
34741@ifinfo
34742@center NO WARRANTY
34743@end ifinfo
34744
34745@item
34746BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
34747FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
34748OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
34749PROVIDE THE PROGRAM ``AS IS'' WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
34750OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
34751MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
34752TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
34753PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
34754REPAIR OR CORRECTION.
34755
34756@item
34757IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
34758WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
34759REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
34760INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
34761OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
34762TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
34763YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
34764PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
34765POSSIBILITY OF SUCH DAMAGES.
34766@end enumerate
34767
34768@iftex
34769@heading END OF TERMS AND CONDITIONS
34770@end iftex
34771@ifinfo
34772@center END OF TERMS AND CONDITIONS
34773@end ifinfo
34774
34775@page
34776@unnumberedsec Appendix: How to Apply These Terms to Your New Programs
34777
34778 If you develop a new program, and you want it to be of the greatest
34779possible use to the public, the best way to achieve this is to make it
34780free software which everyone can redistribute and change under these terms.
34781
34782 To do so, attach the following notices to the program. It is safest
34783to attach them to the start of each source file to most effectively
34784convey the exclusion of warranty; and each file should have at least
34785the ``copyright'' line and a pointer to where the full notice is found.
34786
34787@smallexample
34788@var{one line to give the program's name and a brief idea of what it does.}
34789Copyright (C) @var{yyyy} @var{name of author}
34790
34791This program is free software; you can redistribute it and/or modify
34792it under the terms of the GNU General Public License as published by
34793the Free Software Foundation; either version 2 of the License, or
34794(at your option) any later version.
34795
34796This program is distributed in the hope that it will be useful,
34797but WITHOUT ANY WARRANTY; without even the implied warranty of
34798MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
34799GNU General Public License for more details.
34800
34801You should have received a copy of the GNU General Public License
34802along with this program; if not, write to the Free Software
34803Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
34804@end smallexample
34805
34806Also add information on how to contact you by electronic and paper mail.
34807
34808If the program is interactive, make it output a short notice like this
34809when it starts in an interactive mode:
34810
34811@smallexample
34812Gnomovision version 69, Copyright (C) @var{yyyy} @var{name of author}
34813Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
34814This is free software, and you are welcome to redistribute it
34815under certain conditions; type `show c' for details.
34816@end smallexample
34817
34818The hypothetical commands @samp{show w} and @samp{show c} should show
34819the appropriate parts of the General Public License. Of course, the
34820commands you use may be called something other than @samp{show w} and
34821@samp{show c}; they could even be mouse-clicks or menu items---whatever
34822suits your program.
34823
34824You should also get your employer (if you work as a programmer) or your
34825school, if any, to sign a ``copyright disclaimer'' for the program, if
34826necessary. Here is a sample; alter the names:
34827
34828@example
34829Yoyodyne, Inc., hereby disclaims all copyright interest in the program
34830`Gnomovision' (which makes passes at compilers) written by James Hacker.
34831
34832@var{signature of Ty Coon}, 1 April 1989
34833Ty Coon, President of Vice
34834@end example
34835
34836This General Public License does not permit incorporating your program into
34837proprietary programs. If your program is a subroutine library, you may
34838consider it more useful to permit linking proprietary applications with the
34839library. If this is what you want to do, use the GNU Lesser General
34840Public License instead of this License.
34841
34842@node GNU Free Documentation License, Customizing Calc, Copying, Top
34843@appendix GNU Free Documentation License
34844@include doclicense.texi
34845
34846@node Customizing Calc, Reporting Bugs, GNU Free Documentation License, Top
34840@appendix Customizing Calc 34847@appendix Customizing Calc
34841 34848
34842The usual prefix for Calc is the key sequence @kbd{C-x *}. If you wish 34849The usual prefix for Calc is the key sequence @kbd{C-x *}. If you wish
@@ -36461,7 +36468,7 @@ in your Calc init file or @file{.emacs} file.
36461 36468
36462@printindex vr 36469@printindex vr
36463 36470
36464@node Lisp Function Index, , Variable Index, Top 36471@node Lisp Function Index, , Variable Index, Top
36465@unnumbered Index of Lisp Math Functions 36472@unnumbered Index of Lisp Math Functions
36466 36473
36467The following functions are meant to be used with @code{defmath}, not 36474The following functions are meant to be used with @code{defmath}, not