Wolfram Research’s Mathematica program has no competitors, even though MathWorks’ MATLAB is returning to the Mac this year, and Waterloo Maple’s Maple is available.
With Mathematica 4.1, Wolfram added OS X compatibility and some significant mathematical functionality, but recognition of the Web and preliminary integration with Java were the most innovative additions.
Now, along with the wealth of maths-feature additions you’d expect in a Mathematica update, version 4.2 offers full XML support and Java capabilities, with its own Java run-time engine.
New mathematical capabilities in version 4.2 include analysis of variance (ANOVA), making statistics in Mathematica nearly as feature-rich as a dedicated statistics software package, such as SAS Institute’s StatView. Combinatorica, a package bundled with Mathematica 4.2, provides the most complete library of symbolic elements and functions for finite mathematics that there is – and it has 230 functions more than the older, discrete Combinatorica package. These functions are indispensable for graph theory, commonly
used to generate solutions to network
The other important maths-function improvements are upgrades for linear programming, and global optimization of multi-dimensional functions, making Mathematica 4.2 more useful for those in business and the social sciences.
NMinimize, the new optimization command in version 4.2’s Numerical Math package, for example, provides four different methods for global optimization – genetic programming, nonlinear simplex algorithm, simulated annealing, and random
search – so you can compare results to ensure exact minimization. As a testament to Mathematica 4.2’s value, the same methods for global optimization are also available in other programs, but they cost thousands of pounds each.
Wolfram incorporated its experiments with MathML – the math-representation standard based on XML – into version 4.1, and these experiments have evolved into complete integration of MathML with XML in version 4.2. You can convert individual
Mathematica expressions to XML with the simple command ExpressionML. Similarly, the program can convert entire Mathematica notebooks to XML documents by using the NotebookML action.
You’re also able to change Mathematica XML expressions back and forth to Java DOMs (Document Object Model). Java DOMs use standard Java classes to modify a document, making it easy to automatically sort data, graph it, and use Java to generate reports.
Importing information from XML source files to Mathematica XML format is as simple as exporting information from Mathematica to the Web. This means that analysts will soon be processing the financial data piling up on the Web as .xml data files with Mathematica’s computational packages for time-series processing and options trading. Wolfram Research’s offerings are among the most
popular with maths-oriented traders.
But although the XML and Java language functions provide more flexibility, they’re not as efficient as MathML itself – if you’re porting a Mathematica notebook with graphics to an XML document, for
example, you’ll have ample time to go get yourself a cup of coffee while processing.
In version 4.1, Wolfram introduced J/Link, which allows you to evaluate Mathematica statements in another program (in this case, a Java program).
Version 2.01 of the J/Link tool kit in Mathematica 4.2 also lets you call Java programs directly from within a Mathematica notebook.
You can use Mathematica as a scripting shell to build and test Java classes. Financial-service companies have started using version 4.2 to build Web sites that use Mathematica for back-end
computation and a Java-built front end.
Despite its online integration, Wolfram has not neglected print. Mathematica notebooks have long supported a rich set of word-processing features. But a new package in 4.2 offers palettes for automatic indexing, producing a table of contents,
controlling pagination and print details – such as header and footer size – creating side-by-side text and graphics, and integrating material with the Mathematica Help browser. The authoring tools alone are worth the price of the upgrade.
Compared with MATLAB and Maple, Mathematica 4.2 is in a league of its own. It has the largest scope of maths functionality, the most complete set of
features for print and Web publishing, and exemplary compatibility with OS X. If you’re looking for functionality, and industrial and academic acceptance, Mathematica 4.2 is what you want.