04f3e55989afc248f80462fe6bed88c346ec8532
[ginac.git] / NEWS
1 This file records noteworthy changes.
2
3 0.6.0 (11 May 2000)
4 * IMPORTANT: Several interface changes make programs written with GiNaC 
5   much clearer but break compatibility with older versions:
6   - f(x).series(x,p[,o]) -> f(x).series(x==p,o)
7   - series(f(x),x,p[,o]) -> series(f(x),x==p,o)
8   - gamma() -> tgamma()  (The true Gamma function, there is now also
9     log(tgamma()), called lgamma(), in accord with ISO/IEC 9899:1999.)
10   - EulerGamma -> Euler
11 * #include'ing ginac.h defines the preprocessor symbols GINACLIB_MAJOR_VERSION,
12   GINACLIB_MINOR_VERSION, and GINACLIB_MICRO_VERSION with the respective GiNaC
13   library version numbers.
14 * Expressions can be constructed from strings like this:
15     ex e("2*x+y", lst(x, y));
16 * ex::to_rational() provides a way to extend the domain of functions like
17   gcd() and divide() that only work on polynomials or rational functions (the
18   good old ex::subs() method reverses this process)
19 * Calling diff() on a function that has no derivative defined returns the
20   inert derivative function "Derivative".
21 * Several new timings in the check target.  Some of them may be rather rude 
22   at your machine, feel free to interrupt them.
23
24 0.5.4 (15 March 2000)
25 * Some algorithms in class matrix (notably determinant) were replaced by
26   less brain-dead ones and should now have much better performance.
27 * Checks were completely reorganized and split up into three parts:
28   a) exams (small regression tests with predefined input)
29   b) checks (lenghty coherence checks with random input)
30   c) timings (for coherence and crude benchmarking)
31 * Behaviour of .evalf() was changed: it doesn't .evalf() any exponents.
32 * Expanded expressions now remember they are expanded to prevent
33   superfluous expansions.
34 * Small bugfixes and improvements in the series expansion.
35
36 0.5.3 (23 February 2000)
37 * A more flexible scheme for registering functions was implemented,
38   allowing for remembering, too.
39 * Some Bugfixes.
40
41 0.5.2 (16 February 2000)
42 * Mainly fixes a bug in the packaging of release 0.5.1.
43
44 0.5.1 (14 February 2000)
45 * Fixes a small number of bugs.
46
47 0.5.0 (7 February 2000)
48 * Expressions can be written ("archived") to files and read therefrom.
49 * Addition of GiNaC-cint, which lets you write complete programs in
50   an interactive shell-like manner in your favoured programming
51   language (i.e. C++).
52
53 0.4.1 (13 December 1999)
54 * Series Expansion of Gamma function and some other trigonometric
55   functions at their poles works now.
56 * Many more evaluations of special functions at points where
57   exact results exist.
58 * info_flags::rational doesn't return true for complex extensions
59   any more---use info_flags::crational for the old behaviour.
60   info_flags::integer and -::cinteger work similarly, the same
61   holds for types like info_flags::rational_polynomial.
62
63 0.4.0 (26 November 1999)
64 * First public release.