diff options
| author | Glenn Morris | 2013-01-31 19:58:50 -0800 |
|---|---|---|
| committer | Glenn Morris | 2013-01-31 19:58:50 -0800 |
| commit | 0eb61895e5c1496551c9aa5d1d97ddc24835f932 (patch) | |
| tree | 2bcbbb39286f725cafd49bb97305306159d7c861 /etc | |
| parent | 86e100a6936882a982648c3fe2e09d82f5a94e55 (diff) | |
| download | emacs-0eb61895e5c1496551c9aa5d1d97ddc24835f932.tar.gz emacs-0eb61895e5c1496551c9aa5d1d97ddc24835f932.zip | |
Move lisp/calc/README* to etc/CALC-NEWS
* make-dist: Only README files exist in lisp/ now, not README*.
* doc/misc/calc.texi (Help Commands): Mention etc/CALC-NEWS.
* etc/CALC-NEWS: Move here from lisp/calc/README, README.prev.
* lisp/calc/README, lisp/calc/README.prev: Rename/merge to etc/CALC-NEWS.
Diffstat (limited to 'etc')
| -rw-r--r-- | etc/CALC-NEWS | 1212 | ||||
| -rw-r--r-- | etc/ChangeLog | 4 |
2 files changed, 1216 insertions, 0 deletions
diff --git a/etc/CALC-NEWS b/etc/CALC-NEWS new file mode 100644 index 00000000000..95e8686be62 --- /dev/null +++ b/etc/CALC-NEWS | |||
| @@ -0,0 +1,1212 @@ | |||
| 1 | Copyright (C) 2001-2013 Free Software Foundation, Inc. | ||
| 2 | See the end of the file for license conditions. | ||
| 3 | |||
| 4 | Calc is an advanced desk calculator for GNU Emacs. | ||
| 5 | |||
| 6 | "Calc" Copyright (C) 1990-1993, 2001-2013 Free Software Foundation, Inc. | ||
| 7 | |||
| 8 | Written by: | ||
| 9 | Dave Gillespie | ||
| 10 | c/o Synaptics, Inc. | ||
| 11 | 2698 Orchard Parkway | ||
| 12 | San Jose CA 95134 | ||
| 13 | daveg@synaptics.com, uunet!synaptx!daveg | ||
| 14 | |||
| 15 | Currently maintained by: | ||
| 16 | Jay Belanger <jay.p.belanger@gmail.com> | ||
| 17 | |||
| 18 | From the introduction to the manual: | ||
| 19 | |||
| 20 | "Calc" is an advanced calculator and mathematical tool that runs as | ||
| 21 | part of the GNU Emacs environment. Very roughly based on the HP-28/48 | ||
| 22 | series of calculators, its many features include: | ||
| 23 | |||
| 24 | * Choice of algebraic or RPN (stack-based) entry of calculations. | ||
| 25 | |||
| 26 | * Arbitrary precision integers and floating-point numbers. | ||
| 27 | |||
| 28 | * Arithmetic on rational numbers, complex numbers (rectangular and | ||
| 29 | polar), error forms with standard deviations, open and closed | ||
| 30 | intervals, vectors and matrices, dates and times, infinities, | ||
| 31 | sets, quantities with units, and algebraic formulas. | ||
| 32 | |||
| 33 | * Mathematical operations such as logarithms and trigonometric functions. | ||
| 34 | |||
| 35 | * Programmer's features (bitwise operations, non-decimal numbers). | ||
| 36 | |||
| 37 | * Financial functions such as future value and internal rate of return. | ||
| 38 | |||
| 39 | * Number theoretical features such as prime factorization and | ||
| 40 | arithmetic modulo M for any M. | ||
| 41 | |||
| 42 | * Algebraic manipulation features, including symbolic calculus. | ||
| 43 | |||
| 44 | * Moving data to and from regular editing buffers. | ||
| 45 | |||
| 46 | * "Embedded mode" for manipulating Calc formulas and data directly | ||
| 47 | inside any editing buffer. | ||
| 48 | |||
| 49 | * Graphics using GNUPLOT, a versatile (and free) plotting program. | ||
| 50 | |||
| 51 | * Easy programming using keyboard macros, algebraic formulas, | ||
| 52 | algebraic rewrite rules, or extended Emacs Lisp. | ||
| 53 | |||
| 54 | |||
| 55 | Calc is written entirely in Emacs Lisp, for maximum portability. | ||
| 56 | |||
| 57 | I am anxious to hear about your experiences using Calc. Send mail to | ||
| 58 | "jay.p.belanger@gmail.com". A bug report is most useful if you include the | ||
| 59 | exact input and output that occurred, any modes in effect (such as the | ||
| 60 | current precision), and so on. If you find Calc is difficult to operate | ||
| 61 | in any way, or if you have other suggestions, don't hesitate to let me | ||
| 62 | know. If you find errors (including simple typos) in the manual, let | ||
| 63 | me know. Even if you find no bugs at all I would love to hear your | ||
| 64 | opinions. | ||
| 65 | |||
| 66 | |||
| 67 | Summary of changes to "Calc" | ||
| 68 | ------- -- ------- -- ---- | ||
| 69 | |||
| 70 | For changes in Emacs 23.1 and later, see the main Emacs NEWS file. | ||
| 71 | |||
| 72 | Version 2.1: | ||
| 73 | |||
| 74 | * New matrix mode for square matrices. Improved handling of | ||
| 75 | non-commutative products. | ||
| 76 | |||
| 77 | * New functions: powerexpand and ldiv. | ||
| 78 | |||
| 79 | * Added new functions: sec, csc, cot, sech, csch, coth. | ||
| 80 | |||
| 81 | * 0^0 now evaluates to 1. | ||
| 82 | |||
| 83 | * Added a new language mode for LaTeX. | ||
| 84 | |||
| 85 | * Calc now tries to use an appropriate language mode in embedded mode. | ||
| 86 | |||
| 87 | * Calc now restores original modes when leaving embedded mode. | ||
| 88 | |||
| 89 | * User settable variables which are not set with keystrokes are now | ||
| 90 | customizable. | ||
| 91 | |||
| 92 | * Made ~/.calc.el the default Calc settings file. | ||
| 93 | |||
| 94 | * Miscellaneous updates and bugfixes. | ||
| 95 | |||
| 96 | |||
| 97 | Version 2.02f: | ||
| 98 | |||
| 99 | * Fixed a bug which broke `I', `H', `K' prefix keys in recent Emacs. | ||
| 100 | |||
| 101 | * Fixed a bug in calc.texinfo which prevented "make tex2" from working. | ||
| 102 | |||
| 103 | * Updated `C-y' (calc-yank) to understand Emacs 19 generalized kill ring. | ||
| 104 | |||
| 105 | * Added a copy of "calccard.tex", the Calc quick reference card. | ||
| 106 | |||
| 107 | |||
| 108 | Version 2.02e: | ||
| 109 | |||
| 110 | * Fixed an installation bug caused by recent changes to `write-region'. | ||
| 111 | |||
| 112 | |||
| 113 | Version 2.02d: | ||
| 114 | |||
| 115 | * Fixed a minor installation problem with a Emacs 19.29 byte-compiler bug. | ||
| 116 | |||
| 117 | * Removed archaic "macedit" package (superseded by "edmacro"). | ||
| 118 | |||
| 119 | |||
| 120 | Version 2.02c: | ||
| 121 | |||
| 122 | * Patch to port Calc to Lucid Emacs 19; still works with GNU 18 and GNU 19. | ||
| 123 | |||
| 124 | * Fixed a bug that broke `C-x C-c' after Calc graphics had been used. | ||
| 125 | |||
| 126 | |||
| 127 | Version 2.02b: | ||
| 128 | |||
| 129 | * Minor patch to port Calc to GNU Emacs 19. Will be superseded by Calc 3.00. | ||
| 130 | |||
| 131 | |||
| 132 | Version 2.02: | ||
| 133 | |||
| 134 | * Revamped the manual a bit; rearranged some sections. | ||
| 135 | |||
| 136 | * Added marginal notes for Key/Function Index refs in printed manual. | ||
| 137 | |||
| 138 | * Changed `M-# r' to deal more gracefully with blank lines. | ||
| 139 | |||
| 140 | * Made reductions like `V R +' and `M-# :' considerably faster. | ||
| 141 | |||
| 142 | * Improved parsing and display of cases like "[a + b]". | ||
| 143 | |||
| 144 | * Added `t +' and `t -' for doing business date arithmetic. | ||
| 145 | |||
| 146 | * Added "syntax tables," the opposite of compositions. | ||
| 147 | |||
| 148 | * Added another Rewrites Tutorial exercise. | ||
| 149 | |||
| 150 | * Added the "vmatches" function. | ||
| 151 | |||
| 152 | * Added the `Modes' variable and `m g' command. | ||
| 153 | |||
| 154 | * Improved `u s' to cancel, e.g., "11 mph hr / yd" to get a number. | ||
| 155 | |||
| 156 | * Added "quick units" commands "u 0" through "u 9". | ||
| 157 | |||
| 158 | * Moved `M-%' to calc.el to avoid autoloading problems. | ||
| 159 | |||
| 160 | * Added `M-=' during algebraic entry, acts like `RET ='. | ||
| 161 | |||
| 162 | * Made `LFD' prevent evaluation when finishing a calc-edit command. | ||
| 163 | |||
| 164 | * Changed calc-store commands to use `t .' mode for trail display. | ||
| 165 | |||
| 166 | * Improved integrator to understand forms involving "erf". | ||
| 167 | |||
| 168 | * Fixed parser to make sense of "[1....1e2]" input. | ||
| 169 | |||
| 170 | * Fixed FORTRAN parser to treat a(i,j) as a_i_j if a is declared matrix. | ||
| 171 | |||
| 172 | * Got rid of some version number stamps to reduce size of patches. | ||
| 173 | |||
| 174 | * Fixed a bug in defmath treating "<=" and ">=" predicates. | ||
| 175 | |||
| 176 | * Fixed a bug in which Calc crashed multiplying two date forms. | ||
| 177 | |||
| 178 | * Fixed a bug in line breaker that crashed for large, nested formulas. | ||
| 179 | |||
| 180 | * Fixed a bug using ` to edit string("foo"). | ||
| 181 | |||
| 182 | * Fixed a bug where `M-# y' in Big mode copied stack level number. | ||
| 183 | |||
| 184 | * Fixed a bug where `g O' used wrong default directory, no completion. | ||
| 185 | |||
| 186 | * Fixed a bug where "foo_bar(i)" parsed in C mode but showed as foo#bar. | ||
| 187 | |||
| 188 | * Fixed several bugs where large calculations got "computation too long." | ||
| 189 | |||
| 190 | |||
| 191 | Version 2.01: | ||
| 192 | |||
| 193 | * Added percentage commands `M-%', `b %', and `c %'. | ||
| 194 | |||
| 195 | * Changed Big mode to force radix-10 in superscripts. | ||
| 196 | |||
| 197 | * Improved display of fractions in various language modes. | ||
| 198 | |||
| 199 | * Changed `a n' to work properly with equations and inequalities. | ||
| 200 | |||
| 201 | * The problem with cross references to Index nodes in TeX has been fixed. | ||
| 202 | |||
| 203 | * Fixed a bug where recursive esc-maps make calc-ext/-aent unloadable. | ||
| 204 | |||
| 205 | * Fixed a bug in `M-# k', then `OFF' right away, with fresh Emacs. | ||
| 206 | |||
| 207 | * Fixed a bug in which "S_i_j" was formatted wrong after `j s'. | ||
| 208 | |||
| 209 | * Fixed a bug in which `h k u c' positioned cursor on wrong line. | ||
| 210 | |||
| 211 | * Fixed a bug where `z ?' crashed if `z %' was defined. | ||
| 212 | |||
| 213 | * Fixed a bug in `j O' (calc-select-once-maybe). | ||
| 214 | |||
| 215 | * Fixed "make private" not to ask "Delete excess versions" and crash. | ||
| 216 | |||
| 217 | |||
| 218 | Version 2.00: | ||
| 219 | |||
| 220 | * First complete posting of Calc since 1.01. | ||
| 221 | |||
| 222 | * Most parts of Calc have seen changes since version 1.07. See | ||
| 223 | section "New for Calc 2.00" in the manual for a summary. | ||
| 224 | |||
| 225 | * Changed to compile calc-macs/-maint, to allow "cp *.elc new-dir". | ||
| 226 | |||
| 227 | * Improved calc-describe-bindings to avoid showing redundant ESC maps. | ||
| 228 | |||
| 229 | |||
| 230 | Version 2.00 beta 3: | ||
| 231 | |||
| 232 | * Removed version numbers from most .el files to reduce size of patches. | ||
| 233 | |||
| 234 | * Added a "calc-version" command. | ||
| 235 | |||
| 236 | * Changed `M-# ? ?' to allow for modified describe-function. | ||
| 237 | |||
| 238 | * Changed date parser to accept "Sept" as an alternative for "Sep". | ||
| 239 | |||
| 240 | * Inhibited answers to exercise from showing up in table of contents. | ||
| 241 | |||
| 242 | * Changed Makefile to say "texindex calc.[cfkptv]?" to avoid "calc.el". | ||
| 243 | |||
| 244 | * Fixed up the Makefile in various other ways. | ||
| 245 | |||
| 246 | * Rearranged banner at top of `h h' command's output. | ||
| 247 | |||
| 248 | * Changed "make summary" to print "Calc Summary" on the title page. | ||
| 249 | |||
| 250 | * Added "IntegSimpRules". | ||
| 251 | |||
| 252 | * Added `M-# :', `M-# _', and `M-# Z' options. | ||
| 253 | |||
| 254 | * Changed `^' to evaluate "[-3..-1]^-2" properly. | ||
| 255 | |||
| 256 | * Improved `f g' to give symbolic answers for, e.g., 101:2 and -3:2. | ||
| 257 | |||
| 258 | * Fixed a bug where `h k RET' didn't find the right place on the page. | ||
| 259 | |||
| 260 | * Fixed a bug that formatted "x*(y ? a : b)" as "x y ? a : b". | ||
| 261 | |||
| 262 | * Fixed a bug where defmath translated (< x 0) as (math-posp x)! | ||
| 263 | |||
| 264 | * Fixed a bug that prevented quick-calc from working sometimes. | ||
| 265 | |||
| 266 | * Fixed the `z ?' bug again (maybe this time for good?). | ||
| 267 | |||
| 268 | * Fixed a bug in which `V ^' (vint) was just plain wrong, wrong, wrong! | ||
| 269 | |||
| 270 | * Scanned for and fixed remaining bugs relating to autoloading. | ||
| 271 | |||
| 272 | |||
| 273 | Version 2.00 beta 2: | ||
| 274 | |||
| 275 | * Changed "make info" to try "make texinfo" if "makeinfo" not found. | ||
| 276 | |||
| 277 | * Changed to "New for Calc 2.00"; texinfo.tex chokes on apostrophes. | ||
| 278 | |||
| 279 | * Added List Tutorial Exercise 14 (just in case there weren't enough!). | ||
| 280 | |||
| 281 | * Added a discussion of the `Z F' command to the Programming Tutorial. | ||
| 282 | |||
| 283 | * Improved `H a f' not to lose info if input is partially pre-factored. | ||
| 284 | |||
| 285 | * Improved simplification of expressions like sqrt(3) + 3^3:2. | ||
| 286 | |||
| 287 | * Changed Big mode to omit "*" in expressions like 2 sqrt(3) 5^3:4. | ||
| 288 | |||
| 289 | * Replaced European date format D/M/Y with D.M.Y. | ||
| 290 | |||
| 291 | * Changed `a N' and `a X' to consider the endpoints of the interval. | ||
| 292 | |||
| 293 | * Fixed a bug where TeX mode made c*(1+a/b) look like a function call. | ||
| 294 | |||
| 295 | * Fixed a bug formatting top-level evalto's while using selections. | ||
| 296 | |||
| 297 | * Fixed a bug that caused `z ?' to crash. | ||
| 298 | |||
| 299 | * Fixed a bug where `Z F' broke for argument names "t" and "nil". | ||
| 300 | |||
| 301 | * Fixed several bugs relating to autoloading. | ||
| 302 | |||
| 303 | |||
| 304 | Version 2.00 beta 1: | ||
| 305 | |||
| 306 | * Added "What's new in Calc 2.00" to the manual (summary of info below). | ||
| 307 | |||
| 308 | * Added support for many GNUPLOT 3.0 features. | ||
| 309 | |||
| 310 | * Tweaked the Makefile and calc-compile a bit more. | ||
| 311 | |||
| 312 | * Modified to work with Zawinski's/Furuseth's optimizing byte compiler. | ||
| 313 | |||
| 314 | * Modified Calc to garbage-collect less often (raised gc-cons-threshold). | ||
| 315 | |||
| 316 | * Changed quick-calc to avoid autoloading so many parts of Calc. | ||
| 317 | |||
| 318 | * Changed Calc subfiles to work properly if not byte-compiled. | ||
| 319 | |||
| 320 | * Renamed `M-# s' to `M-# j', made `M-# s' be equivalent to `h s'. | ||
| 321 | |||
| 322 | * Changed calc-quit to avoid reapportioning space among other windows. | ||
| 323 | |||
| 324 | * Added `M-DEL' (calc-pop-above) key, to DEL as LFD is to RET. | ||
| 325 | |||
| 326 | * Added `{' and `}' to scroll vertically, analogous to `<' and `>'. | ||
| 327 | |||
| 328 | * Added `m t' for "total" algebraic mode. | ||
| 329 | |||
| 330 | * Added `d , \' option to group digits with "\,". | ||
| 331 | |||
| 332 | * Improved support of "prime" accent in "eqn" language mode. | ||
| 333 | |||
| 334 | * Changed macedit's read-kbd-macro to accept a string argument in Lisp. | ||
| 335 | |||
| 336 | * Changed calc-check-defines to use a more concise run-hooks linkage. | ||
| 337 | |||
| 338 | * Changed auto-why mode not to say [w=more] if next msg is not urgent. | ||
| 339 | |||
| 340 | * Made `a d' able to differentiate "a?b:c" and "a_i" formulas. | ||
| 341 | |||
| 342 | * Changed probability dist. functions to work with `a f' and `a d'. | ||
| 343 | |||
| 344 | * Added special constants "phi" and "gamma". | ||
| 345 | |||
| 346 | * Added "poly" function, simpler cousin of "gpoly". | ||
| 347 | |||
| 348 | * Added "pdeg", "plead", "pcont", "pprim"; cleaned up "pdiv" and "pgcd". | ||
| 349 | |||
| 350 | * Added `a p' command for polynomial interpolation. | ||
| 351 | |||
| 352 | * Added `a I' command for numerical integration; made IntegLimit variable. | ||
| 353 | |||
| 354 | * Added `a f' to factor polynomials; moved old `a f' to `a "'. | ||
| 355 | |||
| 356 | * Added `a a' to do partial fraction decompositions. | ||
| 357 | |||
| 358 | * Improved `a i' to integrate many more kinds of formulas. | ||
| 359 | |||
| 360 | * Modified `a P' to find numerical roots of high-degree polynomials. | ||
| 361 | |||
| 362 | * Modified `c 0' through `c 9' to convert int-valued floats to integers. | ||
| 363 | |||
| 364 | * Made sinh, arctanh, etc., expandable into exps/logs by `a f'. | ||
| 365 | |||
| 366 | * Added more algebraic simplifications having to do with logs and exps. | ||
| 367 | |||
| 368 | * Changed `s s', `s t', `s x', `s l' to accept an equation at prompt. | ||
| 369 | |||
| 370 | * Changed `s i' not to store Decls if its value is the default, []. | ||
| 371 | |||
| 372 | * Changed `s i' to store in `d O' language mode if in Normal or Big mode. | ||
| 373 | |||
| 374 | * Rearranged `V M'/`V R' matrix mapping modes. | ||
| 375 | |||
| 376 | * Added <#1+#2> notation for lambda expressions. | ||
| 377 | |||
| 378 | * Extended `b l' and other binary shifts to have a 2-argument version. | ||
| 379 | |||
| 380 | * Changed `u c' and `u t' to give unitless result for unitless input. | ||
| 381 | |||
| 382 | * Changed sqrt(1-cos(x)^2)-to-sin(x) to be an unsafe simplification. | ||
| 383 | |||
| 384 | * Improved simplification of sqrts, e.g., sqrt(a^2 x + a^2 y). | ||
| 385 | |||
| 386 | * Changed solver to treat (x-a)(x-b)(x-c) more intelligently. | ||
| 387 | |||
| 388 | * Changed Pascal language mode to use "$FFFF" for hexadecimal numbers. | ||
| 389 | |||
| 390 | * Added support for non-decimal display of floats. | ||
| 391 | |||
| 392 | * Changed `p' to refresh stack display if current float format uses it. | ||
| 393 | |||
| 394 | * Changed Big mode to use subscript notation for log10(x), log(x,b), r#nnn. | ||
| 395 | |||
| 396 | * Changed Big mode to format deriv(u,x) and tderiv(u,x) as du/dx. | ||
| 397 | |||
| 398 | * Changed Big mode to format integ(1/x,x) as "dx/x" instead of "1/x dx". | ||
| 399 | |||
| 400 | * Added "tty" output type for graphics commands. | ||
| 401 | |||
| 402 | * Documented Calc's random number generation algorithm in the manual. | ||
| 403 | |||
| 404 | * Fixed a bug involving having "(setq calc-timing t)" in .emacs. | ||
| 405 | |||
| 406 | * Fixed a bug that incorrectly parsed "|x| - 1" in TeX mode. | ||
| 407 | |||
| 408 | * Fixed bugs and made improvements in `a R' when widening the guess. | ||
| 409 | |||
| 410 | * Fixed a bug that where `a S' didn't solve (x - a)^2 = (x - b)^2. | ||
| 411 | |||
| 412 | * Fixed a bug that sometimes crashed `a P' on systems of equations. | ||
| 413 | |||
| 414 | * Fixed a bug that prevented `b p' (calc-pack-bits) from working. | ||
| 415 | |||
| 416 | * Fixed some bugs in which certain functions didn't get autoloaded. | ||
| 417 | |||
| 418 | * Fixed a bug in which the date <1/1/13> was incorrectly parsed. | ||
| 419 | |||
| 420 | * Fixed a bug which prevented `j D' from expanding (a+b)/c. | ||
| 421 | |||
| 422 | * Fixed a bug in solver: bad inverses for sinh and cosh. | ||
| 423 | |||
| 424 | * Fixed a bug in math-possible-signs that failed for x*0. | ||
| 425 | |||
| 426 | * Fixed a bug where sqrt(-a) was rewritten sqrt(a)*i even if a<0. | ||
| 427 | |||
| 428 | * Fixed a bug in line breaker when first "word" of line was too long. | ||
| 429 | |||
| 430 | * Worked around a makeinfo bug that handled @end group/@group badly. | ||
| 431 | |||
| 432 | |||
| 433 | Version 2.00 alpha 3: | ||
| 434 | |||
| 435 | * Changed logic for locating component .elc files to be even smarter. | ||
| 436 | |||
| 437 | * Changed "make install" to "make compile"; added different "make install". | ||
| 438 | |||
| 439 | * Improved "make compile" to check file dates and compile only when needed. | ||
| 440 | |||
| 441 | * Made output of "make compile" in batch mode more compact and readable. | ||
| 442 | |||
| 443 | * Replaced "Quick Overview" in manual with "Demonstration of Calc". | ||
| 444 | |||
| 445 | * Changed to use keymaps for dispatching M-# and h prefix keys. | ||
| 446 | |||
| 447 | * Added TAGS target to the Calc Makefile. | ||
| 448 | |||
| 449 | * Removed most doc strings from functions; new help commands are better. | ||
| 450 | |||
| 451 | * Got rid of some crufty "fset" calls that were cluttering the code. | ||
| 452 | |||
| 453 | * Split calc-grab-region into two functions, calc-grab-region/-rectangle. | ||
| 454 | |||
| 455 | * Swapped positions of stack and trail in full-calc-keypad display. | ||
| 456 | |||
| 457 | * Improved line-breaking algorithm for displaying long formulas. | ||
| 458 | |||
| 459 | * Improved display of control characters in vectors shown as strings. | ||
| 460 | |||
| 461 | * Changed `d o' to allow fraction format to specify desired denominator. | ||
| 462 | |||
| 463 | * Changed `M-# y' to respect overwrite mode in target buffer. | ||
| 464 | |||
| 465 | * Added `H' prefix to display-mode commands to suppress stack refresh. | ||
| 466 | |||
| 467 | * Changed "calc-why" mechanism to display urgent messages automatically. | ||
| 468 | |||
| 469 | * Handled taking derivatives of symbolic integrals and vice-versa. | ||
| 470 | |||
| 471 | * Handled integrating vectors of formulas. | ||
| 472 | |||
| 473 | * Incorporated Ewerlid's polynomial division and GCD functions into Calc. | ||
| 474 | |||
| 475 | * Improved algebraic operations on "mod" forms, esp. polynomials. | ||
| 476 | |||
| 477 | * Added some more financial functions (sln, syd, ddb). | ||
| 478 | |||
| 479 | * Added nest, anest, fixp, and afixp (`H V R' and `H V U') functions. | ||
| 480 | |||
| 481 | * Added `a .' (calc-remove-equal) command to take apart equations. | ||
| 482 | |||
| 483 | * Generalized dfact to work for negative odd integers; added !! syntax. | ||
| 484 | |||
| 485 | * Changed `k f' to factor 1, 0, and negative integers. | ||
| 486 | |||
| 487 | * Changed `u M', etc., to accept +/- and [ .. ] forms as distributions. | ||
| 488 | |||
| 489 | * Changed `g q' to remove *Gnuplot Commands/Trail* window if present. | ||
| 490 | |||
| 491 | * Added support for Francois Pinard's "dumb terminal" driver for GNUPLOT. | ||
| 492 | |||
| 493 | * Added ":: remember" feature for rewrite rules. | ||
| 494 | |||
| 495 | * Changed rewrites to let pattern "a*b" match "x/2" with a=x, b=1/2. | ||
| 496 | |||
| 497 | * Added ability to put function names like "simplify" in rewrite schedule. | ||
| 498 | |||
| 499 | * Added "Rewrites Tutorial" to the manual. | ||
| 500 | |||
| 501 | * Changed ` to bind RET as newline instead of finish if editing a vector. | ||
| 502 | |||
| 503 | * Added some new exercises to the List Tutorial. | ||
| 504 | |||
| 505 | * Changed `Z F', `V M', etc. not to remove stored vars from def arg list. | ||
| 506 | |||
| 507 | * Added parsing for /1, 2, 3/ notation for Fortran mode vectors. | ||
| 508 | |||
| 509 | * Added a "%%" syntax for comments in formulas being read. | ||
| 510 | |||
| 511 | * Fixed a bug in which failing `h k' removed an existing Info window. | ||
| 512 | |||
| 513 | * Fixed a bug in `j /' operating on subformulas like "a + b". | ||
| 514 | |||
| 515 | * Fixed a bug in which "inf = inf" undesirably evaluated to 1. | ||
| 516 | |||
| 517 | * Fixed a bug that simplified "0 = 1 + a + 2" to "0 = a". | ||
| 518 | |||
| 519 | * Fixed a bug that failed for rewrite patterns like "fib(1 ||| 2)". | ||
| 520 | |||
| 521 | * Fixed a bug that arose because rewrite programs are non-reentrant. | ||
| 522 | |||
| 523 | |||
| 524 | Version 2.00 alpha 2: | ||
| 525 | |||
| 526 | * Changed LFD terminating algebraic entry to push in no-simplify mode. | ||
| 527 | |||
| 528 | * Changed so that `K -' interprets `-' as calc-minus, not neg prefix arg. | ||
| 529 | |||
| 530 | * Improved `h c' command to understand all Calc key sequences. | ||
| 531 | |||
| 532 | * Fixed problems with DistribRules, NegateRules, and FitRules. | ||
| 533 | |||
| 534 | * Fixed several bad node pointers in the manual. | ||
| 535 | |||
| 536 | * Fixed a bug in `h C-w' when used with makeinfo-formatted manuals. | ||
| 537 | |||
| 538 | * Fixed a bug in sqrt(-1) when Polar and HMS modes are enabled. | ||
| 539 | |||
| 540 | * Fixed/improved dscalar and deven functions; added dodd. | ||
| 541 | |||
| 542 | * Fixed a bug in polynomial handling that also affected sum(sin(k),k,1,n). | ||
| 543 | |||
| 544 | * Fixed various other glitches in the manual. | ||
| 545 | |||
| 546 | |||
| 547 | Version 2.00 alpha 1: | ||
| 548 | |||
| 549 | * Calc's tar file now creates a calc-(version) directory to unpack into. | ||
| 550 | |||
| 551 | * Calc now comes with a Makefile; install with "make install". | ||
| 552 | |||
| 553 | * Calc now comes already split into many files; installation is much simpler. | ||
| 554 | |||
| 555 | * Changed base file name of the manual from "calc-info" to "calc.info". | ||
| 556 | |||
| 557 | * Key binding for `M-# w' was documented but not implemented. | ||
| 558 | |||
| 559 | * Bound M-# ' to be synonymous with `M-# f' (used to be `M-# q'). | ||
| 560 | |||
| 561 | * Changed M-# M-# to use last interface of C or K; E no longer counts. | ||
| 562 | |||
| 563 | * Changed `i' (and `M-# i') not to return to Top node unnecessarily. | ||
| 564 | |||
| 565 | * Changed `h' to be a prefix key with various help commands. | ||
| 566 | |||
| 567 | * Changed `s' to be a prefix key with various store and recall commands. | ||
| 568 | |||
| 569 | * Keys `i', `r', and `l' are obsolete (moved to `h' and `s' prefixes). | ||
| 570 | |||
| 571 | * Rearranged `K', `X', and `M-RET' keys; `K' is now calc-keep-args. | ||
| 572 | |||
| 573 | * Changed quick-calc to display input formula as well as output if room. | ||
| 574 | |||
| 575 | * Changed quick-calc to interact with the editing buffer and kill ring. | ||
| 576 | |||
| 577 | * Created pack, unpack, unpackt function equivalents of `v p', `v u'. | ||
| 578 | |||
| 579 | * Changed to expand (a/b)^x to a^x/b^x only if b > 0 (not if a > 0). | ||
| 580 | |||
| 581 | * Changed math-possible-signs to understand sqrt function. | ||
| 582 | |||
| 583 | * Changed Z [, rewrites to consider any provably non-zero value as true. | ||
| 584 | |||
| 585 | * Changed normal language modes to accept ** as a synonym for ^. | ||
| 586 | |||
| 587 | * Added "maple" language mode. | ||
| 588 | |||
| 589 | * Changed, e.g., Mathematica "(2 + 3 I)^(1.23*10^20)" to include parens. | ||
| 590 | |||
| 591 | * Generalized math-compose-big properties for all language modes. | ||
| 592 | |||
| 593 | * Introduced "string" and other function for composing expressions. | ||
| 594 | |||
| 595 | * Changed many recursive vector routines to use loops instead. | ||
| 596 | |||
| 597 | * Added evalv, evalvn function equivalents to `=', `N'. | ||
| 598 | |||
| 599 | * Changed "expr =>" not to evaluate at all if in no-simplify mode. | ||
| 600 | |||
| 601 | * Redesigned user interface of `a F' (calc-curve-fit) command. | ||
| 602 | |||
| 603 | * Added "phase" feature to the rewrite rule system. | ||
| 604 | |||
| 605 | * Added "&&&", "|||", "!!!" to the rewrite rule system. | ||
| 606 | |||
| 607 | * Introduced a new notation for rewrites: LHS := RHS :: COND. | ||
| 608 | |||
| 609 | * Changed `a r' (but not `j r') to repeat 100 times by default. | ||
| 610 | |||
| 611 | * Integrated EvalRules more cleanly into the default simplifications. | ||
| 612 | |||
| 613 | * Added `H v l' [mdims] to measure the dimensions of a matrix. | ||
| 614 | |||
| 615 | * Changed `u c' to interpret "/units" as "1/units". | ||
| 616 | |||
| 617 | * Added `u a' to adjust unit prefix letters automatically. | ||
| 618 | |||
| 619 | * Changed `u s' to enable scalar mode while simplifying. | ||
| 620 | |||
| 621 | * Changed `c f' [pfloat] not to float integer powers or subscripts. | ||
| 622 | |||
| 623 | * Added a three-argument form for the "hms" function. | ||
| 624 | |||
| 625 | * Changed, e.g., sin(90) degrees to produce 1 instead of 1.0. | ||
| 626 | |||
| 627 | * Changed symbolic mode to prefer sqrt(int): abs([1 2 3]) => sqrt(14). | ||
| 628 | |||
| 629 | * Enhanced solver to handle, e.g., x + 1/x = a; exp(x) + exp(-x) = a. | ||
| 630 | |||
| 631 | * Enhanced simplifier to handle, e.g., exp(a+2) / e^a => e^2. | ||
| 632 | |||
| 633 | * Enhanced `a s' to simplify sqrt(x) - x^1:2 and exp(x) - e^x to 0. | ||
| 634 | |||
| 635 | * Added -(a + b) to -a - b as a default simplification. | ||
| 636 | |||
| 637 | * Added rules for differentiating sum() and prod() functions. | ||
| 638 | |||
| 639 | * Added a few more energy units (due to Przemek Klosowski). | ||
| 640 | |||
| 641 | * Added overflow/underflow checking for all floating-point arithmetic. | ||
| 642 | |||
| 643 | * Extended error forms to work with complex numbers. | ||
| 644 | |||
| 645 | * Generalized GCD to handle fractional arguments. | ||
| 646 | |||
| 647 | * Changed graphics routines to evaluate "x" values, e.g., [-pi .. pi]. | ||
| 648 | |||
| 649 | * Added `g q', like `g K' but without viewing the Gnuplot Trail. | ||
| 650 | |||
| 651 | * Changed `g p' and `V M' to display better "Working..." messages. | ||
| 652 | |||
| 653 | * Modified `M-# g' to be more robust about grabbing formulas. | ||
| 654 | |||
| 655 | * Added `Y' prefix key reserved for user-written extensions. | ||
| 656 | |||
| 657 | * Added calc-load-hook and calc-ext-load-hook. | ||
| 658 | |||
| 659 | * Prevented calc-install from leaving large ~ files behind. | ||
| 660 | |||
| 661 | * Changed @bullet to @bullet{} in manual to conform to texinfo spec. | ||
| 662 | |||
| 663 | * Rearranged some chapters in the manual to be a bit more logical. | ||
| 664 | |||
| 665 | * Added calc-split-summary command. | ||
| 666 | |||
| 667 | * Fixed several bugs in embedded mode. | ||
| 668 | |||
| 669 | * Fixed a bug in calc-vector-covariance that required a prefix arg. | ||
| 670 | |||
| 671 | * Fixed a bug that prevented parsing "a=>" with no right-hand side. | ||
| 672 | |||
| 673 | * Fixed a bug which allowed incorrectly dividing a vector by a vector. | ||
| 674 | |||
| 675 | * Fixed a bug formatting sum(...)^2 in Big mode. | ||
| 676 | |||
| 677 | * Fixed a bug that prevented Calc from deleting old graphics temp files. | ||
| 678 | |||
| 679 | * Fixed some typos calling calc-inverse-func instead of calc-invert-func. | ||
| 680 | |||
| 681 | * Fixed bugs in the derivatives of conj, deg, and rad; added re, im. | ||
| 682 | |||
| 683 | * Fixed a bug where (r;theta) parsed as r exp(theta i) even in Deg mode. | ||
| 684 | |||
| 685 | * Fixed a bug which gave wrong answer for exp of a polar complex number. | ||
| 686 | |||
| 687 | * Fixed a bug in `Z F' that failed if formula used non-arg variables. | ||
| 688 | |||
| 689 | * Fixed a bad pointer to Info node "Assignments in Embedded Mode". | ||
| 690 | |||
| 691 | * Fixed several errors in the Calc Summary. | ||
| 692 | |||
| 693 | |||
| 694 | Version 1.08 beta 1: | ||
| 695 | |||
| 696 | * Calc's copyright has been assigned to FSF, for inclusion in Emacs 19! | ||
| 697 | |||
| 698 | * Changed M-# to be a two-key sequence; use M-# M-# to start Calc now. | ||
| 699 | |||
| 700 | * Rewrote and expanded the introductory chapter of the manual. | ||
| 701 | |||
| 702 | * Added a key and function summary to the manual. | ||
| 703 | |||
| 704 | * Changed the manual to take better advantage of TeX's math formatting. | ||
| 705 | |||
| 706 | * Changed manual to be printable in @smallbook format. | ||
| 707 | |||
| 708 | * Added "calc-embedded" mode. | ||
| 709 | |||
| 710 | * Added "=>" [evalto] operator. | ||
| 711 | |||
| 712 | * Added facilities for date and date/time arithmetic. | ||
| 713 | |||
| 714 | * Added a set of financial functions (pv, fv, etc.). | ||
| 715 | |||
| 716 | * Added infinite quantities inf, uinf, and nan (plus infinite intervals). | ||
| 717 | |||
| 718 | * Added "EvalRules", "SimpRules", and "ExtSimpRules" variables. | ||
| 719 | |||
| 720 | * Added sum and product commands `a +', `a -', `a *', `a T'. | ||
| 721 | |||
| 722 | * Enhanced `a S' and `a P' to solve systems of equations. | ||
| 723 | |||
| 724 | * Enhanced solver to handle eqns like sin(x) = cos(2 x), sqrt(x) + x = 1. | ||
| 725 | |||
| 726 | * Added `a M' (calc-map-equation) command. | ||
| 727 | |||
| 728 | * Added new statistical functions: mean, standard deviation, etc. | ||
| 729 | |||
| 730 | * Added line, polynomial, and curve fitting commands (`a L' and `a F'). | ||
| 731 | |||
| 732 | * Added support for composite units, e.g., "mi+ft+in". | ||
| 733 | |||
| 734 | * Enhanced "Big" mode to format square roots, choose, and powers better. | ||
| 735 | |||
| 736 | * Enhanced "Big" mode to display fractions in large notation. | ||
| 737 | |||
| 738 | * Added several alternate formats for matrix display. | ||
| 739 | |||
| 740 | * Changed TeX mode to write "(1 + x^2)" instead of "\left(1 + x^2\right)". | ||
| 741 | |||
| 742 | * Added support for relational operators in TeX and FORTRAN modes. | ||
| 743 | |||
| 744 | * Added recognition of accents like \dot, \tilde, \underline in TeX mode. | ||
| 745 | |||
| 746 | * Added "eqn" language mode. | ||
| 747 | |||
| 748 | * Added extra control over display justification with `d <', `d =', `d >'. | ||
| 749 | |||
| 750 | * Added calc-left-label and calc-right-label (`d {', `d }'). | ||
| 751 | |||
| 752 | * Added "nn%" syntax for algebraic formulas; equivalent to "nn * .01". | ||
| 753 | |||
| 754 | * Added input syntaxes like a = b = c, a != b != c, a <= b < c. | ||
| 755 | |||
| 756 | * Changed "_" to mean subscripts; old use of "_" in vars is now "#". | ||
| 757 | |||
| 758 | * Introduced "matrix mode" and "scalar mode" (`m v'). | ||
| 759 | |||
| 760 | * Introduced generic identity matrices (idn(1)). | ||
| 761 | |||
| 762 | * Added a method for declaring variables to be real, integer, > 0, etc. | ||
| 763 | |||
| 764 | * Added `Z S' command for editing stored value of a variable. | ||
| 765 | |||
| 766 | * Added "subst" algebraic function equivalent to the `a b' command. | ||
| 767 | |||
| 768 | * Added `a f' command, changed deriv/integ/solve-for to use it. | ||
| 769 | |||
| 770 | * Improved `a s' to simplify (x + y) (y + x) to (x + y)^2. | ||
| 771 | |||
| 772 | * Improved `a s' to simplify i^2 to -1. | ||
| 773 | |||
| 774 | * Improved `a s' to simplify, e.g., sin(pi/3) in Symbolic mode. | ||
| 775 | |||
| 776 | * Improved `a s' to simplify sqrt(8) to 2 sqrt(2), 1/sqrt(2) to sqrt(2)/2. | ||
| 777 | |||
| 778 | * Moved sin(arccos(x)) from `a e' to `a s'; not unsafe after all! | ||
| 779 | |||
| 780 | * Changed (x y)^z => x^z y^z to be a usually-unsafe simplification. | ||
| 781 | |||
| 782 | * Added thorough documentation of `a s' and `a e' to the manual. | ||
| 783 | |||
| 784 | * Improved `a c' to collect "f(a)" even if "a" also appears elsewhere. | ||
| 785 | |||
| 786 | * Introduced lin, linnt, islin, islinnt functions for linearity testing. | ||
| 787 | |||
| 788 | * Improved `a x' to use binomial theorem to give simpler answers. | ||
| 789 | |||
| 790 | * Improved `j D' to distribute powers of sums: (a + b)^n. | ||
| 791 | |||
| 792 | * Improved `j M' to merge products of powers (may need no-simplify mode). | ||
| 793 | |||
| 794 | * Changed to use defvar for DistribRules etc. so `Z V' works with them. | ||
| 795 | |||
| 796 | * Improved `j *' and `j /' to work properly in a few more cases. | ||
| 797 | |||
| 798 | * Improved `V R' to use identity value when reducing empty vectors. | ||
| 799 | |||
| 800 | * Improved `v p' and `v u' to support more complex packing operations. | ||
| 801 | |||
| 802 | * Disabled automatic simplification of sqrt(2)/2 to 1/sqrt(2). | ||
| 803 | |||
| 804 | * Bound SPC and RET to press, TAB to next-menu in *Calc Keypad* buffer. | ||
| 805 | |||
| 806 | * Added C-u ' to do algebraic entry with language mode forced to normal. | ||
| 807 | |||
| 808 | * Added "$1", "$2", etc. input notation for algebraic entry. | ||
| 809 | |||
| 810 | * Changed unary operators like `n', `&' to treat neg prefix args like RET. | ||
| 811 | |||
| 812 | * Changed ` (calc-edit) to show full precision regardless of float format. | ||
| 813 | |||
| 814 | * Enhanced quick-calc to display integers in several formats. | ||
| 815 | |||
| 816 | * Documented `g H' (calc-graph-hide) command (had been left from manual). | ||
| 817 | |||
| 818 | * Enhanced floor/ceil/trunc/round in several ways. | ||
| 819 | |||
| 820 | * Added rounde and roundu functions. | ||
| 821 | |||
| 822 | * Changed `c 1' through `c 9' to change small floats to 0.0; added `c 0'. | ||
| 823 | |||
| 824 | * Enhanced set operations to work on sets of intervals. | ||
| 825 | |||
| 826 | * Fixed erf(0), utpn(x,x,y), and arccosh(-1) to work properly. | ||
| 827 | |||
| 828 | * Changed complex arctan and arctanh to follow Steele 2nd edition. | ||
| 829 | |||
| 830 | * Expanded "Branch Cuts" section of the manual with some useful tables. | ||
| 831 | |||
| 832 | * Rearranged order of words in mode line to be a bit more logical. | ||
| 833 | |||
| 834 | * Changed `m N' (num-simplify) mode to evaluate constant vectors, too. | ||
| 835 | |||
| 836 | * Changed `a r'/`j r' to prompt twice for separate LHS/RHS if necessary. | ||
| 837 | |||
| 838 | * Enhanced `let(v,x)' in rewrites by allowing arbitrary patterns for v. | ||
| 839 | |||
| 840 | * Changed cursor positioning in second prompt for `a b' (calc-substitute). | ||
| 841 | |||
| 842 | * Changed `y' to omit line numbers more consistently. | ||
| 843 | |||
| 844 | * Changed `o' (calc-realign) to reset horizontal scrolling to zero, also. | ||
| 845 | |||
| 846 | * Added "pred" mode for calc-eval. | ||
| 847 | |||
| 848 | * Added "calc-report-bug" as an alias for "report-calc-bug". | ||
| 849 | |||
| 850 | * Added `Z T' and "calc-pass-errors" to aid debugging Calc-related code. | ||
| 851 | |||
| 852 | * Added "calc-load-everything" (`m X' or `M-# L') command. | ||
| 853 | |||
| 854 | * Enhanced calc-install to pre-build units table, CommuteRules, etc. | ||
| 855 | |||
| 856 | * Changed Calc to interact more gracefully with load-path. | ||
| 857 | |||
| 858 | * Changed Lisp Variable Index in manual to include user variables, too. | ||
| 859 | |||
| 860 | * Fixed a bug that prevented calc-install from working under VMS. | ||
| 861 | |||
| 862 | * Fixed a bug that sometimes crashed rewrites dealing with subtractions. | ||
| 863 | |||
| 864 | * Fixed a bug that prevented `a S' from solving "3 - x = 1 + x"! | ||
| 865 | |||
| 866 | * Fixed a bug in solver that crashed for certain cubics and quartics. | ||
| 867 | |||
| 868 | * Fixed a bug in calc-simplify that crashed for equations and ineqs. | ||
| 869 | |||
| 870 | * Fixed a bug which placed the "[" oddly in `d B' + `v /' mode. | ||
| 871 | |||
| 872 | * Fixed a bug where finishing calc-edit improperly obeyed language mode. | ||
| 873 | |||
| 874 | * Fixed a bug formatting (-1)^n in Big mode after selection commands. | ||
| 875 | |||
| 876 | * Fixed a bug that got ">=" and "<=" backwards in rewrite conditions. | ||
| 877 | |||
| 878 | * Fixed a bug that broke the `"x"' key in calc-keypad mode. | ||
| 879 | |||
| 880 | * Fixed a bug in which `MAP$' in calc-keypad didn't display "Working...". | ||
| 881 | |||
| 882 | * Fixed a bug where matrix division gave bad result for singular matrix. | ||
| 883 | |||
| 884 | * Fixed a bug which closed Calc window if calc-grab-region got an error. | ||
| 885 | |||
| 886 | * Fixed a bug where `a s' failed on formulas containing dimension errors. | ||
| 887 | |||
| 888 | * Fixed a bug that caused `m F' to hang. | ||
| 889 | |||
| 890 | * Fixed a bug in complex arithmetic that caused problems with solver. | ||
| 891 | |||
| 892 | * Fixed a bug which raised intervals to interval powers incorrectly. | ||
| 893 | |||
| 894 | * Fixed a bug in utpp/ltpp (order of arguments did not match the manual). | ||
| 895 | |||
| 896 | * Fixed a bug in which `t y' rounded yanked data with old precision. | ||
| 897 | |||
| 898 | * Fixed a bug in which "in(3, [3 .. 3))" returned true. | ||
| 899 | |||
| 900 | * Fixed a bug which simplified abs(abs(x)) incorrectly. | ||
| 901 | |||
| 902 | * Fixed a bug in which (a^2)^1:3 was unsafely simplified to a^2:3. | ||
| 903 | |||
| 904 | * Fixed a bug in rewrite system which missed pattern "2 sin(x) cos(x)". | ||
| 905 | |||
| 906 | * Fixed a bug in rewrite system which missed pattern "a - a cos(x)^2". | ||
| 907 | |||
| 908 | * Fixed obsolete trail tags gsmp, gneg, ginv to jsmp, jneg, jinv. | ||
| 909 | |||
| 910 | * Fixed some errors and made improvements in units table [Ulrich Mueller]. | ||
| 911 | |||
| 912 | |||
| 913 | Version 1.07: | ||
| 914 | |||
| 915 | * Added `m F' (calc-settings-file-name) command. | ||
| 916 | |||
| 917 | * Added calc-autoload-directory variable. | ||
| 918 | |||
| 919 | * Extended Z ` to accept a prefix argument. | ||
| 920 | |||
| 921 | * Added keystrokes (v h, v k) for head, tail, cons. | ||
| 922 | |||
| 923 | * Extended `v e' to accept a vector as the filler. | ||
| 924 | |||
| 925 | * Changed `V M', `V R' to accept mapping-mode keys in uppercase, too. | ||
| 926 | |||
| 927 | * Changed V M ' etc. to accept $, $$, ... as argument indicators. | ||
| 928 | |||
| 929 | * Changed `t y' to accept a prefix argument. | ||
| 930 | |||
| 931 | * Put in a cleaner and safer random number generator for `k r' et al. | ||
| 932 | |||
| 933 | * Fixed a bug which completely broke `a r' command! | ||
| 934 | |||
| 935 | * Fixed "0 * matrix" to generate a zero matrix instead of 0. | ||
| 936 | |||
| 937 | * Fixed a bug in `a R' which sometimes caused it to crash. | ||
| 938 | |||
| 939 | * Fixed a fatal typo in the TeX version of the manual. | ||
| 940 | |||
| 941 | * Fixed a bug that prevented C-k, C-w, M-w from working in Trail buffer. | ||
| 942 | |||
| 943 | * Fixed another bug in `Z P' command. | ||
| 944 | |||
| 945 | * Fixed a bug in `u s' which incorrectly simplified subtractions. | ||
| 946 | |||
| 947 | * Fixed an argument-name aliasing bug evaluating lambda( ) formulas. | ||
| 948 | |||
| 949 | * Fixed overfull hboxes in the manual. | ||
| 950 | |||
| 951 | * Fixed various other bugs in the manual. | ||
| 952 | |||
| 953 | |||
| 954 | Version 1.06: | ||
| 955 | |||
| 956 | * Added "calc-keypad" mode for X window system users (try it!). | ||
| 957 | |||
| 958 | * Improved "calc-eval" for calling/operating Calc from user-written Lisp. | ||
| 959 | |||
| 960 | * Moved vector accumulate command to `V U' (old `H V R' still supported). | ||
| 961 | |||
| 962 | * Added right-to-left reductions: `I V R' and `I V U'. | ||
| 963 | |||
| 964 | * Added set operations on vectors: intersect, union, diff, xor. | ||
| 965 | |||
| 966 | * Added `I v s' to remove a subvector from a vector. | ||
| 967 | |||
| 968 | * Introduced `H |' to append two vectors with no magical special cases. | ||
| 969 | |||
| 970 | * Introduced rhead, rtail, and rcons for isolating last vector element. | ||
| 971 | |||
| 972 | * Changed `g p' to keep temp files around until data actually change. | ||
| 973 | |||
| 974 | * Improved `a S' to solve many higher-order polynomial equations. | ||
| 975 | |||
| 976 | * Added `a P' to produce a vector of all solutions to an equation. | ||
| 977 | |||
| 978 | * Enhanced `a v' and `j v' to allow top-level-only evaluation. | ||
| 979 | |||
| 980 | * Changed `j DEL' to delete a side of an eqn or ineq, leaving other side. | ||
| 981 | |||
| 982 | * Fixed binding for keys `j 1' through `j 9'. | ||
| 983 | |||
| 984 | * Introduced "let" marker in rewrite rules. | ||
| 985 | |||
| 986 | * Enhanced the "sign" function to provide a two-argument version. | ||
| 987 | |||
| 988 | * Changed "max-specpdl-size exceeded" error message to be user-friendly. | ||
| 989 | |||
| 990 | * Put "<Aborted>" in the trail in above case and when user presses C-g. | ||
| 991 | |||
| 992 | * Changed TeX mode to generate \ldots instead of \dots, recognize both. | ||
| 993 | |||
| 994 | * Changed "sin(0)" etc. (for integer 0) to generate "0" instead of "0.". | ||
| 995 | |||
| 996 | * Enhanced Programming Tutorial exercise 2. | ||
| 997 | |||
| 998 | * Fixed an error in the answer to Types Tutorial exercise 3. | ||
| 999 | |||
| 1000 | * Fixed several bugs relating to head, tail, and cons functions. | ||
| 1001 | |||
| 1002 | * Fixed some other minor typos in the manual. | ||
| 1003 | |||
| 1004 | * Fixed several bugs in `Z P' (calc-user-define-permanent). | ||
| 1005 | |||
| 1006 | * Fixed several bugs that broke the `g P' command. | ||
| 1007 | |||
| 1008 | |||
| 1009 | Version 1.05: | ||
| 1010 | |||
| 1011 | * Created a calc-install command to ease installation. | ||
| 1012 | |||
| 1013 | * Added lots of exercises to the Tutorial section of the manual. | ||
| 1014 | |||
| 1015 | * Added ability to select and operate on sub-formulas. | ||
| 1016 | |||
| 1017 | * Substantially improved the algebraic rewrite-rule system. | ||
| 1018 | |||
| 1019 | * Added a set of graphing commands that use GNUPLOT. | ||
| 1020 | |||
| 1021 | * Added a command (`a R') for finding numerical roots to equations. | ||
| 1022 | |||
| 1023 | * Added several new math functions, such as erf and Bessel functions. | ||
| 1024 | |||
| 1025 | * Added key bindings for miscellaneous commands using the "f" prefix key. | ||
| 1026 | |||
| 1027 | * Added lots of new vector operations, many of them in the spirit of APL. | ||
| 1028 | |||
| 1029 | * Added more control over vector display, including an abbreviated mode. | ||
| 1030 | |||
| 1031 | * Improved keyboard macro editing; added read-kbd-macro to macedit.el. | ||
| 1032 | |||
| 1033 | * Introduced the `m S' (calc-shift-prefix) command. | ||
| 1034 | |||
| 1035 | * Enhanced the calc-edit command in several ways. | ||
| 1036 | |||
| 1037 | * Made it possible to hit ` (calc-edit) during numeric/algebraic entry. | ||
| 1038 | |||
| 1039 | * Enhanced the calc-solve-for command to handle inequalities. | ||
| 1040 | |||
| 1041 | * Enhanced calc-simplify to handle equations and inequalities. | ||
| 1042 | |||
| 1043 | * Taught log10 and log to look for exact integer or rational results. | ||
| 1044 | |||
| 1045 | * Added ability to take Nth roots directly. | ||
| 1046 | |||
| 1047 | * Added "increment" and "decrement" commands for integers and floats. | ||
| 1048 | |||
| 1049 | * Added "full-help" command, changed "h" key to invoke it. | ||
| 1050 | |||
| 1051 | * Added special help for Inverse and Hyperbolic prefixes. | ||
| 1052 | |||
| 1053 | * Added an optional prefix argument to `o' (calc-realign). | ||
| 1054 | |||
| 1055 | * Changed `t s' and `t r' to use RET as the search exit key. | ||
| 1056 | |||
| 1057 | * Made handling of operator keys for V M, V R, etc. more regular. | ||
| 1058 | |||
| 1059 | * Improved TeX mode; added support for \matrix format. | ||
| 1060 | |||
| 1061 | * Added a variant of `m a' mode that only affects ( and [ keys. | ||
| 1062 | |||
| 1063 | * Fixed "Mismatch" message for algebraic entry of semi-open intervals. | ||
| 1064 | |||
| 1065 | * Trimmed fat from calc.el to speed loading, moved more to calc-ext.el. | ||
| 1066 | |||
| 1067 | * Fixed a bug in which minibuffer entry rounded to out-of-date precision. | ||
| 1068 | |||
| 1069 | * Fixed a bug which crashed Calc 1.04 under Epoch. | ||
| 1070 | |||
| 1071 | * Fixed a bug which messed up Calc Trail's mode line, among other things. | ||
| 1072 | |||
| 1073 | * Fixed a bug which caused trail ">" to show only when in Trail buffer. | ||
| 1074 | |||
| 1075 | * Fixed a bug in which "calc" called "calc-grab-region" with too few args. | ||
| 1076 | |||
| 1077 | * Fixed bugs in both implementation and documentation of calc-perm. | ||
| 1078 | |||
| 1079 | * Fixed a bug in which calc-simplify-extended always used radians. | ||
| 1080 | |||
| 1081 | * Fixed a bug where calc-comma failed to override "polar" mode. | ||
| 1082 | |||
| 1083 | * Fixed a bug doing mixed arithmetic on rectangular+polar complex numbers. | ||
| 1084 | |||
| 1085 | * Fixed several bugs in transcendental functions with complex arguments. | ||
| 1086 | |||
| 1087 | * Fixed a bug in which `a s' simplified "x / .5" to ".5 x". | ||
| 1088 | |||
| 1089 | * Fixed numerous other bugs in various parts of Calc. | ||
| 1090 | |||
| 1091 | * Completed the "Hooks" section of the "Internals" chapter of the manual. | ||
| 1092 | |||
| 1093 | |||
| 1094 | Version 1.04: | ||
| 1095 | |||
| 1096 | * Included a copy of revision history (from README) in calc.el. | ||
| 1097 | |||
| 1098 | * Added the "calc-split" feature to split calc-ext.el into smaller bits. | ||
| 1099 | |||
| 1100 | * Changed calc-unpack to unpack floats and fractions, too. | ||
| 1101 | |||
| 1102 | * Added "mant", "xpon", and "scf" functions for decomposing floats. | ||
| 1103 | |||
| 1104 | * Fixed a bug in the "y" command with positive prefix arguments. | ||
| 1105 | |||
| 1106 | * Rearranged binary shift/rotate command keys to be a bit more convenient. | ||
| 1107 | |||
| 1108 | * Fixed a bug in which simplifying "(0/0) * 2" crashed with a Lisp error. | ||
| 1109 | |||
| 1110 | * Made `H F' [ffloor] and friends faster for very large arguments. | ||
| 1111 | |||
| 1112 | * Made calc-define-del more robust. | ||
| 1113 | |||
| 1114 | * Handled pasting of data into the Calculator using the mouse under X. | ||
| 1115 | |||
| 1116 | * Made overlay-arrow variables buffer-local to avoid interference. | ||
| 1117 | |||
| 1118 | * Fixed a problem in which Calc Trail buffer got stuck after a C-x C-w. | ||
| 1119 | |||
| 1120 | |||
| 1121 | Version 1.03: | ||
| 1122 | |||
| 1123 | * Changed math-choose to compute n-choose-m faster when m is large. | ||
| 1124 | |||
| 1125 | * Fixed some problems with TeX mode. | ||
| 1126 | |||
| 1127 | * Fixed a bug that prevented `b s' from working without a prefix argument. | ||
| 1128 | |||
| 1129 | * Added "calc-eval" function. | ||
| 1130 | |||
| 1131 | * Improved calc-grab-region. | ||
| 1132 | |||
| 1133 | |||
| 1134 | Version 1.02: | ||
| 1135 | |||
| 1136 | * Fixed a bug in Tutorial: telephone pole height/distance were switched! | ||
| 1137 | |||
| 1138 | * Fixed a few other things in the manual. | ||
| 1139 | |||
| 1140 | * Added "full-calc" command. | ||
| 1141 | |||
| 1142 | * Added "calc-insert-variables" (`Z I') command. | ||
| 1143 | |||
| 1144 | * Quick Calc now works even if you are already in the minibuffer. | ||
| 1145 | |||
| 1146 | * Fixed a bug in math-mul-bignum-digit which affected math-and, etc. | ||
| 1147 | |||
| 1148 | * Definition of "Hectares" was wrong in units table. | ||
| 1149 | |||
| 1150 | * Fixed a bug in calc-execute-kbd-macro concerning undo and refresh. | ||
| 1151 | |||
| 1152 | * Bound "calc-undo" to `C-x u' as well as `C-_' and `U'. | ||
| 1153 | |||
| 1154 | Version 1.01: | ||
| 1155 | |||
| 1156 | * Added a tutorial section to the manual. | ||
| 1157 | |||
| 1158 | * Next and Prev for node Strings in the manual were reversed; fixed. | ||
| 1159 | |||
| 1160 | * Changed "'bignum" in calc-isqrt-bignum-iter to "'bigpos". | ||
| 1161 | |||
| 1162 | * Fixed a bug that prevented "$" from working during algebraic entry. | ||
| 1163 | |||
| 1164 | * Fixed a bug caused by an X (last-X) command following a K (macro) cmd. | ||
| 1165 | |||
| 1166 | * Fixed a bug in which K command incorrectly formatted stack in Big mode. | ||
| 1167 | |||
| 1168 | * Added space between unary operators and non-flat compositions. | ||
| 1169 | (Otherwise, "-(a/b)" in Big mode blended the minus sign into the rule!) | ||
| 1170 | |||
| 1171 | * Fixed formatting of (-1)^n in Big mode. | ||
| 1172 | |||
| 1173 | * Fixed some problems relating to "not" operator in Pascal language mode. | ||
| 1174 | |||
| 1175 | * Fixed several bugs relating to V M ' and V M $ sequences. | ||
| 1176 | |||
| 1177 | * Fixed matrix-vector multiplication to produce a vector. | ||
| 1178 | |||
| 1179 | * Introduced Z ` ... Z ' commands; renamed old Z ' to Z #. | ||
| 1180 | |||
| 1181 | * Fixed various other bugs. | ||
| 1182 | |||
| 1183 | * Added calc-settings-file variable suggested by C. Witty. | ||
| 1184 | |||
| 1185 | |||
| 1186 | Version 1.00: | ||
| 1187 | |||
| 1188 | * First official release of Calc. | ||
| 1189 | |||
| 1190 | * If you used the Beta test version (0.01), you will find that this | ||
| 1191 | version of Calc is over 50% larger than the original release. | ||
| 1192 | General areas of improvement include much better algebra features; | ||
| 1193 | operations on units; language modes; simplification modes; interval | ||
| 1194 | arithmetic; vector mapping and reduction. Other new commands include | ||
| 1195 | calc-fraction and calc-grab-region. The program has been split into | ||
| 1196 | two parts for faster loading, and the manual is more complete. | ||
| 1197 | |||
| 1198 | |||
| 1199 | This file is part of GNU Emacs. | ||
| 1200 | |||
| 1201 | GNU Emacs is free software: you can redistribute it and/or modify | ||
| 1202 | it under the terms of the GNU General Public License as published by | ||
| 1203 | the Free Software Foundation, either version 3 of the License, or | ||
| 1204 | (at your option) any later version. | ||
| 1205 | |||
| 1206 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 1207 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 1208 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 1209 | GNU General Public License for more details. | ||
| 1210 | |||
| 1211 | You should have received a copy of the GNU General Public License | ||
| 1212 | along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. | ||
diff --git a/etc/ChangeLog b/etc/ChangeLog index 6c1a08cb670..e50ae678a70 100644 --- a/etc/ChangeLog +++ b/etc/ChangeLog | |||
| @@ -1,3 +1,7 @@ | |||
| 1 | 2013-02-01 Glenn Morris <rgm@gnu.org> | ||
| 2 | |||
| 3 | * CALC-NEWS: Move here from lisp/calc/README, README.prev. | ||
| 4 | |||
| 1 | 2012-12-23 Jan Djärv <jan.h.d@swipnet.se> | 5 | 2012-12-23 Jan Djärv <jan.h.d@swipnet.se> |
| 2 | 6 | ||
| 3 | * TODO: Adjust entry about NS event loop. | 7 | * TODO: Adjust entry about NS event loop. |