MuPad 3 & Maple 9.5
Chance pairing shows deep connection between
products
The decision to pair Maple and MuPAD in this review was pragmatic:
Maplesoft's Maple 9.5 was launched in May, and coverage of the release
of SciFace Software's MuPAD 3.0 is overdue. MuPAD ('Multi Processing
Algebra Data tool') originated in 1990, in the purest of research:
work at the University of Paderborn for handling bulky data from investigations
of group theoretical structure in non-linear systems. Paderborn's MuPAD
Group developed it into an open-source, cross-platform algebra system,
until, in 1998, funding pressure led the Group into a separate commercial
launch by the newly-created SciFace Software. For programmers, MuPAD
Pro contains a source-code debugger for troubleshooting user procedures,
and advanced users can add 'dynamic modules', compiled run-time C/C++
applications. MuPAD's mathematical repertoire is large, but distinctly
slanted toward 'purity'.
Maple was, in the past,
the stereotypical 'pure mathematics' package. Maple 9.5 builds
on the dual-format package introduced with Maple 9, offering
the choice 'Standard' and 'Classic' interfaces (which might
be caricatured as 'modern but memory-hungry' and 'old but
efficient'). Maple already provided Simplex linear optimization,
but Optimization generalizes and extends this with a set
of fast Numerical Algorithms Group (NAG) routines for linear,
nonlinear and quadratic programming, as well as linear and
nonlinear least-squares problems. A Maplet system is also
used for the Tutors, 40 interactive tutorials for student
use in pre-calculus, calculus (expanded in Maple 9.5 to multivariate
calculus) and linear algebra. Maple 9.5 is, overall, a nice
mid-version release, with highlights in the new Optimization
package, and the convenient front-menu access to important
Maplet packages such as the Plot Builder.
Considering them together
showed a deeper connection. There are a handful of references
to MuPAD as a Maple clone, and there are superficial resemblances:
a shared display convention, red for input, blue for output;
the same term, ' procedures', for stored programs; and a
similar architecture, a small C/C++ kernel that calls code
libraries written in their native language. Whether this
is intentional, coincidence or convergent evolution, they
make an interesting pairing.