Mercurial > emacs
annotate lisp/calc/README @ 91303:1ae1f4066439
Merge from emacs--devo--0
Revision: emacs@sv.gnu.org/emacs--unicode--0--patch-307
author | Miles Bader <miles@gnu.org> |
---|---|
date | Sat, 29 Dec 2007 02:51:57 +0000 |
parents | 21856dff27ce |
children | 107ccd98fa12 |
rev | line source |
---|---|
75587
68cfc1db0d26
Add copyright and permissions notices.
Glenn Morris <rgm@gnu.org>
parents:
75364
diff
changeset
|
1 Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007 |
68cfc1db0d26
Add copyright and permissions notices.
Glenn Morris <rgm@gnu.org>
parents:
75364
diff
changeset
|
2 Free Software Foundation, Inc. |
75774
dc23aaa67696
Switch to standard GPL text for license.
Glenn Morris <rgm@gnu.org>
parents:
75587
diff
changeset
|
3 See the end of the file for license conditions. |
75587
68cfc1db0d26
Add copyright and permissions notices.
Glenn Morris <rgm@gnu.org>
parents:
75364
diff
changeset
|
4 |
40785 | 5 |
41048 | 6 This directory contains Calc, an advanced desk calculator for GNU |
7 Emacs. | |
40785 | 8 |
75364 | 9 "Calc" Copyright (C) 1990, 1991, 1992, 1993, 2001, 2002, 2003, 2004, |
10 2005, 2006, 2007 Free Software Foundation, Inc. | |
40785 | 11 |
41048 | 12 Written by: |
13 Dave Gillespie | |
14 c/o Synaptics, Inc. | |
15 2698 Orchard Parkway | |
16 San Jose CA 95134 | |
17 daveg@synaptics.com, uunet!synaptx!daveg | |
40785 | 18 |
49598
0d8b17d428b5
Trailing whitepace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
49262
diff
changeset
|
19 Currently maintained by: |
77465
1154f082efd9
Update maintainer's address.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
75774
diff
changeset
|
20 Jay Belanger <jay.p.belanger@gmail.com> |
40785 | 21 |
22 From the introduction to the manual: | |
23 | |
24 "Calc" is an advanced calculator and mathematical tool that runs as | |
25 part of the GNU Emacs environment. Very roughly based on the HP-28/48 | |
26 series of calculators, its many features include: | |
27 | |
28 * Choice of algebraic or RPN (stack-based) entry of calculations. | |
29 | |
30 * Arbitrary precision integers and floating-point numbers. | |
31 | |
32 * Arithmetic on rational numbers, complex numbers (rectangular and | |
33 polar), error forms with standard deviations, open and closed | |
34 intervals, vectors and matrices, dates and times, infinities, | |
35 sets, quantities with units, and algebraic formulas. | |
36 | |
37 * Mathematical operations such as logarithms and trigonometric functions. | |
38 | |
39 * Programmer's features (bitwise operations, non-decimal numbers). | |
40 | |
41 * Financial functions such as future value and internal rate of return. | |
42 | |
43 * Number theoretical features such as prime factorization and | |
44 arithmetic modulo M for any M. | |
45 | |
46 * Algebraic manipulation features, including symbolic calculus. | |
47 | |
48 * Moving data to and from regular editing buffers. | |
49 | |
50 * "Embedded mode" for manipulating Calc formulas and data directly | |
51 inside any editing buffer. | |
52 | |
53 * Graphics using GNUPLOT, a versatile (and free) plotting program. | |
54 | |
55 * Easy programming using keyboard macros, algebraic formulas, | |
56 algebraic rewrite rules, or extended Emacs Lisp. | |
57 | |
58 | |
59 Calc is written entirely in Emacs Lisp, for maximum portability. | |
60 | |
61 I am anxious to hear about your experiences using Calc. Send mail to | |
77465
1154f082efd9
Update maintainer's address.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
75774
diff
changeset
|
62 "jay.p.belanger@gmail.com". A bug report is most useful if you include the |
40785 | 63 exact input and output that occurred, any modes in effect (such as the |
64 current precision), and so on. If you find Calc is difficult to operate | |
65 in any way, or if you have other suggestions, don't hesitate to let me | |
66 know. If you find errors (including simple typos) in the manual, let | |
67 me know. Even if you find no bugs at all I would love to hear your | |
68 opinions. | |
69 | |
70 | |
71 | |
72 Summary of changes to "Calc" | |
73 ------- -- ------- -- ---- | |
74 | |
87465
21856dff27ce
Mention new languages.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
86140
diff
changeset
|
75 * Added support for Yacas, Maxima and Giac languages. |
21856dff27ce
Mention new languages.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
86140
diff
changeset
|
76 |
86140 | 77 * Added a menu. |
78 | |
85488
97828a1c0c2b
Add some recent news.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
78329
diff
changeset
|
79 * Added logistic non-linear curves to curve-fitting. |
97828a1c0c2b
Add some recent news.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
78329
diff
changeset
|
80 |
97828a1c0c2b
Add some recent news.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
78329
diff
changeset
|
81 * Added option of plotting data points and curve when curve-fitting. |
97828a1c0c2b
Add some recent news.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
78329
diff
changeset
|
82 |
97828a1c0c2b
Add some recent news.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
78329
diff
changeset
|
83 * Made unit conversions exact when possible. |
40785 | 84 |
85704
c19c2b3e417b
Mention the lowering of the precedence of negation.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
85488
diff
changeset
|
85 * Lower the precedence of negation. |
c19c2b3e417b
Mention the lowering of the precedence of negation.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
85488
diff
changeset
|
86 |
62173
e3b4fae26626
Updated summary of changes.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
58542
diff
changeset
|
87 Version 2.1: |
e3b4fae26626
Updated summary of changes.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
58542
diff
changeset
|
88 |
67545
86b260a13429
Updated the changes information.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
64324
diff
changeset
|
89 * New matrix mode for square matrices. Improved handling of |
86b260a13429
Updated the changes information.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
64324
diff
changeset
|
90 non-commutative products. |
86b260a13429
Updated the changes information.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
64324
diff
changeset
|
91 |
86b260a13429
Updated the changes information.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
64324
diff
changeset
|
92 * New functions: powerexpand and ldiv. |
86b260a13429
Updated the changes information.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
64324
diff
changeset
|
93 |
62173
e3b4fae26626
Updated summary of changes.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
58542
diff
changeset
|
94 * Added new functions: sec, csc, cot, sech, csch, coth. |
e3b4fae26626
Updated summary of changes.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
58542
diff
changeset
|
95 |
e3b4fae26626
Updated summary of changes.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
58542
diff
changeset
|
96 * 0^0 now evaluates to 1. |
e3b4fae26626
Updated summary of changes.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
58542
diff
changeset
|
97 |
e3b4fae26626
Updated summary of changes.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
58542
diff
changeset
|
98 * Added a new language mode for LaTeX. |
e3b4fae26626
Updated summary of changes.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
58542
diff
changeset
|
99 |
e3b4fae26626
Updated summary of changes.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
58542
diff
changeset
|
100 * Calc now tries to use an appropriate language mode in embedded mode. |
e3b4fae26626
Updated summary of changes.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
58542
diff
changeset
|
101 |
e3b4fae26626
Updated summary of changes.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
58542
diff
changeset
|
102 * Calc now restores original modes when leaving embedded mode. |
e3b4fae26626
Updated summary of changes.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
58542
diff
changeset
|
103 |
e3b4fae26626
Updated summary of changes.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
58542
diff
changeset
|
104 * User settable variables which are not set with keystrokes are now |
e3b4fae26626
Updated summary of changes.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
58542
diff
changeset
|
105 customizable. |
e3b4fae26626
Updated summary of changes.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
58542
diff
changeset
|
106 |
e3b4fae26626
Updated summary of changes.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
58542
diff
changeset
|
107 * Made ~/.calc.el the default Calc settings file. |
e3b4fae26626
Updated summary of changes.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
58542
diff
changeset
|
108 |
e3b4fae26626
Updated summary of changes.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
58542
diff
changeset
|
109 * Miscellaneous updates and bugfixes. |
e3b4fae26626
Updated summary of changes.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
58542
diff
changeset
|
110 |
e3b4fae26626
Updated summary of changes.
Jay Belanger <jay.p.belanger@gmail.com>
parents:
58542
diff
changeset
|
111 |
40785 | 112 Version 2.02f: |
113 | |
114 * Fixed a bug which broke `I', `H', `K' prefix keys in recent Emacs. | |
115 | |
116 * Fixed a bug in calc.texinfo which prevented "make tex2" from working. | |
117 | |
118 * Updated `C-y' (calc-yank) to understand Emacs 19 generalized kill ring. | |
119 | |
120 * Added a copy of "calccard.tex", the Calc quick reference card. | |
121 | |
122 | |
123 Version 2.02e: | |
124 | |
125 * Fixed an installation bug caused by recent changes to `write-region'. | |
126 | |
127 | |
128 Version 2.02d: | |
129 | |
130 * Fixed a minor installation problem with a Emacs 19.29 byte-compiler bug. | |
131 | |
132 * Removed archaic "macedit" package (superseded by "edmacro"). | |
133 | |
134 | |
135 Version 2.02c: | |
136 | |
137 * Patch to port Calc to Lucid Emacs 19; still works with GNU 18 and GNU 19. | |
138 | |
139 * Fixed a bug that broke `C-x C-c' after Calc graphics had been used. | |
140 | |
141 | |
142 Version 2.02b: | |
143 | |
144 * Minor patch to port Calc to GNU Emacs 19. Will be superseded by Calc 3.00. | |
145 | |
146 | |
147 Version 2.02: | |
148 | |
149 * Revamped the manual a bit; rearranged some sections. | |
150 | |
151 * Added marginal notes for Key/Function Index refs in printed manual. | |
152 | |
153 * Changed `M-# r' to deal more gracefully with blank lines. | |
154 | |
155 * Made reductions like `V R +' and `M-# :' considerably faster. | |
156 | |
157 * Improved parsing and display of cases like "[a + b]". | |
158 | |
159 * Added `t +' and `t -' for doing business date arithmetic. | |
160 | |
161 * Added "syntax tables," the opposite of compositions. | |
162 | |
163 * Added another Rewrites Tutorial exercise. | |
164 | |
165 * Added the "vmatches" function. | |
166 | |
167 * Added the `Modes' variable and `m g' command. | |
168 | |
169 * Improved `u s' to cancel, e.g., "11 mph hr / yd" to get a number. | |
170 | |
171 * Added "quick units" commands "u 0" through "u 9". | |
172 | |
173 * Moved `M-%' to calc.el to avoid autoloading problems. | |
174 | |
175 * Added `M-=' during algebraic entry, acts like `RET ='. | |
176 | |
177 * Made `LFD' prevent evaluation when finishing a calc-edit command. | |
178 | |
179 * Changed calc-store commands to use `t .' mode for trail display. | |
180 | |
181 * Improved integrator to understand forms involving "erf". | |
182 | |
183 * Fixed parser to make sense of "[1....1e2]" input. | |
184 | |
185 * Fixed FORTRAN parser to treat a(i,j) as a_i_j if a is declared matrix. | |
186 | |
187 * Got rid of some version number stamps to reduce size of patches. | |
188 | |
189 * Fixed a bug in defmath treating "<=" and ">=" predicates. | |
190 | |
191 * Fixed a bug in which Calc crashed multiplying two date forms. | |
192 | |
193 * Fixed a bug in line breaker that crashed for large, nested formulas. | |
194 | |
195 * Fixed a bug using ` to edit string("foo"). | |
196 | |
197 * Fixed a bug where `M-# y' in Big mode copied stack level number. | |
198 | |
199 * Fixed a bug where `g O' used wrong default directory, no completion. | |
200 | |
201 * Fixed a bug where "foo_bar(i)" parsed in C mode but showed as foo#bar. | |
202 | |
203 * Fixed several bugs where large calculations got "computation too long." | |
204 | |
205 | |
206 Version 2.01: | |
207 | |
208 * Added percentage commands `M-%', `b %', and `c %'. | |
209 | |
210 * Changed Big mode to force radix-10 in superscripts. | |
211 | |
212 * Improved display of fractions in various language modes. | |
213 | |
214 * Changed `a n' to work properly with equations and inequalities. | |
215 | |
216 * The problem with cross references to Index nodes in TeX has been fixed. | |
217 | |
218 * Fixed a bug where recursive esc-maps make calc-ext/-aent unloadable. | |
219 | |
220 * Fixed a bug in `M-# k', then `OFF' right away, with fresh Emacs. | |
221 | |
222 * Fixed a bug in which "S_i_j" was formatted wrong after `j s'. | |
223 | |
224 * Fixed a bug in which `h k u c' positioned cursor on wrong line. | |
225 | |
226 * Fixed a bug where `z ?' crashed if `z %' was defined. | |
227 | |
228 * Fixed a bug in `j O' (calc-select-once-maybe). | |
229 | |
230 * Fixed "make private" not to ask "Delete excess versions" and crash. | |
231 | |
232 | |
233 Version 2.00: | |
234 | |
235 * First complete posting of Calc since 1.01. | |
236 | |
237 * Most parts of Calc have seen changes since version 1.07. See | |
238 section "New for Calc 2.00" in the manual for a summary. In | |
239 the FTP version of the Calc distribution, the file README.prev | |
240 contains a detailed change history from 1.00 up to 2.00. | |
241 | |
75774
dc23aaa67696
Switch to standard GPL text for license.
Glenn Morris <rgm@gnu.org>
parents:
75587
diff
changeset
|
242 |
dc23aaa67696
Switch to standard GPL text for license.
Glenn Morris <rgm@gnu.org>
parents:
75587
diff
changeset
|
243 This file is part of GNU Emacs. |
dc23aaa67696
Switch to standard GPL text for license.
Glenn Morris <rgm@gnu.org>
parents:
75587
diff
changeset
|
244 |
dc23aaa67696
Switch to standard GPL text for license.
Glenn Morris <rgm@gnu.org>
parents:
75587
diff
changeset
|
245 GNU Emacs is free software; you can redistribute it and/or modify |
dc23aaa67696
Switch to standard GPL text for license.
Glenn Morris <rgm@gnu.org>
parents:
75587
diff
changeset
|
246 it under the terms of the GNU General Public License as published by |
78329
25780bd5f0e7
Switch license to GPLv3 or later.
Glenn Morris <rgm@gnu.org>
parents:
77465
diff
changeset
|
247 the Free Software Foundation; either version 3, or (at your option) |
75774
dc23aaa67696
Switch to standard GPL text for license.
Glenn Morris <rgm@gnu.org>
parents:
75587
diff
changeset
|
248 any later version. |
dc23aaa67696
Switch to standard GPL text for license.
Glenn Morris <rgm@gnu.org>
parents:
75587
diff
changeset
|
249 |
dc23aaa67696
Switch to standard GPL text for license.
Glenn Morris <rgm@gnu.org>
parents:
75587
diff
changeset
|
250 GNU Emacs is distributed in the hope that it will be useful, |
dc23aaa67696
Switch to standard GPL text for license.
Glenn Morris <rgm@gnu.org>
parents:
75587
diff
changeset
|
251 but WITHOUT ANY WARRANTY; without even the implied warranty of |
dc23aaa67696
Switch to standard GPL text for license.
Glenn Morris <rgm@gnu.org>
parents:
75587
diff
changeset
|
252 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
dc23aaa67696
Switch to standard GPL text for license.
Glenn Morris <rgm@gnu.org>
parents:
75587
diff
changeset
|
253 GNU General Public License for more details. |
dc23aaa67696
Switch to standard GPL text for license.
Glenn Morris <rgm@gnu.org>
parents:
75587
diff
changeset
|
254 |
dc23aaa67696
Switch to standard GPL text for license.
Glenn Morris <rgm@gnu.org>
parents:
75587
diff
changeset
|
255 You should have received a copy of the GNU General Public License |
dc23aaa67696
Switch to standard GPL text for license.
Glenn Morris <rgm@gnu.org>
parents:
75587
diff
changeset
|
256 along with GNU Emacs; see the file COPYING. If not, write to the |
dc23aaa67696
Switch to standard GPL text for license.
Glenn Morris <rgm@gnu.org>
parents:
75587
diff
changeset
|
257 Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, |
dc23aaa67696
Switch to standard GPL text for license.
Glenn Morris <rgm@gnu.org>
parents:
75587
diff
changeset
|
258 Boston, MA 02110-1301, USA. |