Maxima 5.9.1 has been released. The release notes are attached below.
Please see <http://maxima.sourceforge.net> for more details, including
source and binary downloads.
Maxima is a GPL'd symbolic algebra system based on the original Macsyma
sources from MIT. We would always welcome more contributors from the
community. There are two developments in Maxima that may be of interest to
those in the Lisp community:
1) Maxima may now be built purely from Lisp. See the file INSTALL.lisp
for details. This functionality is included for those who prefer to avoid
the autoconf/automake wrappers we have around the Lisp-based Maxima build
system.
2) The source code in the current CVS version of Maxima is much cleaner
than it used to be. The code is now uniformly lower-case and consistently
indented. Many old-fashioned aspects of the code, such as the use of
SLOOP instead of LOOP, are being updated to ANSI CL.
The 5.9.1 release is the second of a series of development releases which
will culminate in Maxima 6.0, the first truly stable release of the new
Maxima project. This release has known bugs. However, we believe it is
stable enough for use by a wide audience. We are relying on bug reports
from users to help us make 6.0 the most bug-free version of Maxima ever.
--James Amundson
Maxima Project Leader
--------------------------------------------------------------------
These are the release notes for Maxima 5.9.1. For a detailed list of
changes in the release, see the file ChangeLog in the distribution.
The updates and new features in Maxima 5.9.1 fall into three categories:
infrastructure, functionality and bug fixes.
1) Infrastructure
a) Windows
- A command-line version of Maxima is now available in
addition to the xmaxima GUI. The new command-line version supports
batch mode as well as interfacing with other programs such as
Emacs.
- Clisp is now a supported lisp on Windows.
b) Support for external interfaces
- Maxima now provides a mechanism for robust interface to
external front-ends such as TeXmacs.
c) Lisp debugger disables by default
- Maxima will no longer dump the user into the lisp debugger
when it encounters an error. The debugger can be re-enabled if
desired.
d) More Lisp implementations supported
- CMUCL, Clisp and GCL support is actively maintained. - SBCL, ACL,
and OpenMCL support is included, but no active
maintainers for Maxima using these Lisps have yet volunteered.
e) Static installs
- Maxima installs are now independent of the Lisp
implementation for CMUCL, Clisp and GCL. This will simplify binary
distributions as well as removing problems caused by Lisp upgrades
breaking existing Maxima installations.
f) "Pure" Lisp builds
- It is now possible to build Maxima using nothing but
Lisp. See the file INSTALL.lisp for details.
g) Simplified use of shell scripts
- The use of shell scripts in Maxima has been greatly
simplified. The old maxima-run-lisp script has been completely
eliminated.
- Maxima is now more portable.
- Porting to non-Unix platforms is simplified. - Maxima is easier
to maintain.
h) rmaxima
- rmaxima is a simple new front-end that gives Maxima better
command-line editing abilities, including persistent history, for
Lisps that did not have it before, e.g., CMUCL. rmaxima requires
the external program rlwrap. rmaxima is not currently compatible
with Clisp.
i) Test suite improvements
- The test suite is now available at run time through the
new command run_testsuite().
- Test suite output has been made more readable.
j) GCL performance increase
- Maxima now takes better advantage of GCL's optimization
features. The result is a substantially faster exectuable.
2) Functionality
a) Enhanced plotting
- 2D Adaptive plotting allows smooth plotting even in the
presence of singularities. The 2D plotting algorithms were adapted
from Yacas, <http://yacas.sourceforge.net>.
- Maxima's default plotter is now gnuplot. The gnuplot
interface has been greatly enhanced; see
<http://maxima.sourceforge.net> for examples.
b) New input/output labels
- Before this release, the labels input, output, and
intermediate output were C#, D# and E#. They are now %i#, %o# and
%t#, respectively. This change was made because many users became
confused when labels such as C1 clashed with user-defined
variables with similar names.
- The old behavior can be restored by with the commands:
inchar:C ; outchar:D ; linechar:E ;
b) Quadpack
- The quadpack routines for robust numerical integration have
been added.
c) Tensor
- The tensor package is now being actively maintained.
d) Differential Equations
- Enhanced differential equation solvers have been added. See
share/contrib/diffequations.
3) Bug fixes
Many bugs found in Maxima 5.9.0 have been fixed. Many bugs still exist,
however. The 5.9.3 release will focus primarily on bug fixes. (The
5.9.2 release will focus only on case-sensitivity issues.)