Commit | Line | Data |
---|---|---|
c2e309f2 GM |
1 | Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007 |
2 | Free Software Foundation, Inc. | |
5b87ad55 | 3 | See the end of the file for license conditions. |
c2e309f2 | 4 | |
136211a9 | 5 | |
bac0fac8 CW |
6 | This directory contains Calc, an advanced desk calculator for GNU |
7 | Emacs. | |
136211a9 | 8 | |
7cdc02a6 GM |
9 | "Calc" Copyright (C) 1990, 1991, 1992, 1993, 2001, 2002, 2003, 2004, |
10 | 2005, 2006, 2007 Free Software Foundation, Inc. | |
136211a9 | 11 | |
bac0fac8 CW |
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 | |
136211a9 | 18 | |
a1506d29 | 19 | Currently maintained by: |
e8fff8ed | 20 | Jay Belanger <jay.p.belanger@gmail.com> |
136211a9 EZ |
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 | ||
136211a9 | 59 | Calc is written entirely in Emacs Lisp, for maximum portability. |
136211a9 EZ |
60 | |
61 | I am anxious to hear about your experiences using Calc. Send mail to | |
e8fff8ed | 62 | "jay.p.belanger@gmail.com". A bug report is most useful if you include the |
136211a9 EZ |
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 | ||
136211a9 | 70 | |
136211a9 | 71 | |
686bf1b6 JB |
72 | Summary of changes to "Calc" |
73 | ------- -- ------- -- ---- | |
136211a9 EZ |
74 | |
75 | ||
686bf1b6 | 76 | Version 2.1: |
136211a9 | 77 | |
2da61afc JB |
78 | * New matrix mode for square matrices. Improved handling of |
79 | non-commutative products. | |
80 | ||
81 | * New functions: powerexpand and ldiv. | |
82 | ||
686bf1b6 | 83 | * Added new functions: sec, csc, cot, sech, csch, coth. |
136211a9 | 84 | |
686bf1b6 | 85 | * 0^0 now evaluates to 1. |
136211a9 | 86 | |
686bf1b6 JB |
87 | * Added a new language mode for LaTeX. |
88 | ||
89 | * Calc now tries to use an appropriate language mode in embedded mode. | |
90 | ||
91 | * Calc now restores original modes when leaving embedded mode. | |
136211a9 | 92 | |
686bf1b6 JB |
93 | * User settable variables which are not set with keystrokes are now |
94 | customizable. | |
136211a9 | 95 | |
686bf1b6 JB |
96 | * Made ~/.calc.el the default Calc settings file. |
97 | ||
98 | * Miscellaneous updates and bugfixes. | |
99 | ||
100 | \f | |
136211a9 EZ |
101 | Version 2.02f: |
102 | ||
103 | * Fixed a bug which broke `I', `H', `K' prefix keys in recent Emacs. | |
104 | ||
105 | * Fixed a bug in calc.texinfo which prevented "make tex2" from working. | |
106 | ||
107 | * Updated `C-y' (calc-yank) to understand Emacs 19 generalized kill ring. | |
108 | ||
109 | * Added a copy of "calccard.tex", the Calc quick reference card. | |
110 | ||
111 | \f | |
112 | Version 2.02e: | |
113 | ||
114 | * Fixed an installation bug caused by recent changes to `write-region'. | |
115 | ||
116 | \f | |
117 | Version 2.02d: | |
118 | ||
119 | * Fixed a minor installation problem with a Emacs 19.29 byte-compiler bug. | |
120 | ||
121 | * Removed archaic "macedit" package (superseded by "edmacro"). | |
122 | ||
123 | \f | |
124 | Version 2.02c: | |
125 | ||
126 | * Patch to port Calc to Lucid Emacs 19; still works with GNU 18 and GNU 19. | |
127 | ||
128 | * Fixed a bug that broke `C-x C-c' after Calc graphics had been used. | |
129 | ||
130 | \f | |
131 | Version 2.02b: | |
132 | ||
133 | * Minor patch to port Calc to GNU Emacs 19. Will be superseded by Calc 3.00. | |
134 | ||
135 | \f | |
136 | Version 2.02: | |
137 | ||
138 | * Revamped the manual a bit; rearranged some sections. | |
139 | ||
140 | * Added marginal notes for Key/Function Index refs in printed manual. | |
141 | ||
142 | * Changed `M-# r' to deal more gracefully with blank lines. | |
143 | ||
144 | * Made reductions like `V R +' and `M-# :' considerably faster. | |
145 | ||
146 | * Improved parsing and display of cases like "[a + b]". | |
147 | ||
148 | * Added `t +' and `t -' for doing business date arithmetic. | |
149 | ||
150 | * Added "syntax tables," the opposite of compositions. | |
151 | ||
152 | * Added another Rewrites Tutorial exercise. | |
153 | ||
154 | * Added the "vmatches" function. | |
155 | ||
156 | * Added the `Modes' variable and `m g' command. | |
157 | ||
158 | * Improved `u s' to cancel, e.g., "11 mph hr / yd" to get a number. | |
159 | ||
160 | * Added "quick units" commands "u 0" through "u 9". | |
161 | ||
162 | * Moved `M-%' to calc.el to avoid autoloading problems. | |
163 | ||
164 | * Added `M-=' during algebraic entry, acts like `RET ='. | |
165 | ||
166 | * Made `LFD' prevent evaluation when finishing a calc-edit command. | |
167 | ||
168 | * Changed calc-store commands to use `t .' mode for trail display. | |
169 | ||
170 | * Improved integrator to understand forms involving "erf". | |
171 | ||
172 | * Fixed parser to make sense of "[1....1e2]" input. | |
173 | ||
174 | * Fixed FORTRAN parser to treat a(i,j) as a_i_j if a is declared matrix. | |
175 | ||
176 | * Got rid of some version number stamps to reduce size of patches. | |
177 | ||
178 | * Fixed a bug in defmath treating "<=" and ">=" predicates. | |
179 | ||
180 | * Fixed a bug in which Calc crashed multiplying two date forms. | |
181 | ||
182 | * Fixed a bug in line breaker that crashed for large, nested formulas. | |
183 | ||
184 | * Fixed a bug using ` to edit string("foo"). | |
185 | ||
186 | * Fixed a bug where `M-# y' in Big mode copied stack level number. | |
187 | ||
188 | * Fixed a bug where `g O' used wrong default directory, no completion. | |
189 | ||
190 | * Fixed a bug where "foo_bar(i)" parsed in C mode but showed as foo#bar. | |
191 | ||
192 | * Fixed several bugs where large calculations got "computation too long." | |
193 | ||
194 | \f | |
195 | Version 2.01: | |
196 | ||
197 | * Added percentage commands `M-%', `b %', and `c %'. | |
198 | ||
199 | * Changed Big mode to force radix-10 in superscripts. | |
200 | ||
201 | * Improved display of fractions in various language modes. | |
202 | ||
203 | * Changed `a n' to work properly with equations and inequalities. | |
204 | ||
205 | * The problem with cross references to Index nodes in TeX has been fixed. | |
206 | ||
207 | * Fixed a bug where recursive esc-maps make calc-ext/-aent unloadable. | |
208 | ||
209 | * Fixed a bug in `M-# k', then `OFF' right away, with fresh Emacs. | |
210 | ||
211 | * Fixed a bug in which "S_i_j" was formatted wrong after `j s'. | |
212 | ||
213 | * Fixed a bug in which `h k u c' positioned cursor on wrong line. | |
214 | ||
215 | * Fixed a bug where `z ?' crashed if `z %' was defined. | |
216 | ||
217 | * Fixed a bug in `j O' (calc-select-once-maybe). | |
218 | ||
219 | * Fixed "make private" not to ask "Delete excess versions" and crash. | |
220 | ||
221 | \f | |
222 | Version 2.00: | |
223 | ||
224 | * First complete posting of Calc since 1.01. | |
225 | ||
226 | * Most parts of Calc have seen changes since version 1.07. See | |
227 | section "New for Calc 2.00" in the manual for a summary. In | |
228 | the FTP version of the Calc distribution, the file README.prev | |
229 | contains a detailed change history from 1.00 up to 2.00. | |
230 | ||
5b87ad55 GM |
231 | \f |
232 | This file is part of GNU Emacs. | |
233 | ||
234 | GNU Emacs is free software; you can redistribute it and/or modify | |
235 | it under the terms of the GNU General Public License as published by | |
236 | the Free Software Foundation; either version 2, or (at your option) | |
237 | any later version. | |
238 | ||
239 | GNU Emacs is distributed in the hope that it will be useful, | |
240 | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
241 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
242 | GNU General Public License for more details. | |
243 | ||
244 | You should have received a copy of the GNU General Public License | |
245 | along with GNU Emacs; see the file COPYING. If not, write to the | |
246 | Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | |
247 | Boston, MA 02110-1301, USA. |