Mathematica 8

Share this on social media:

There are a lot of reasons to enthuse about the new release of Mathematica; across the board and not least (from my point of view) the statistics and probability coverage. The headline, however, has to be extended integration with Wolfram Alpha, particularly the use of the linguistic interface to provide natural language lookup.

Most computer algebra packages are working towards increased intuitive access to their power, bringing their methods into the hands of more potential problem solvers, using better entry methods. What is different here is that the user can bring experience or understanding from many other environments and have it interpreted into annotated Mathematica syntax, both enabling and educating in one go.

As a simple example, the Mathematica syntax for plotting a sine wave over one complete revolution is Plot[Sin[x], {x, 0, 6.29}]. Forget the capitalisation, use the wrong sort of bracket or omit one, and, as with any computer language, it doesn’t work. This is enough to put off many potential new users. Now, however, you can start with an equals sign (signalling that you want to call on Alpha) and have a stab at writing it in any common-sense combination of speech and what you know in another system.

For example, ‘plot sine(x) from 0 to 6.29’ will not only produce the required plot but display the correct Mathematica form with associated assumptions. If you try ‘plot sinx from 0..6.29’, that will work too. Tests to such software with new users convince that this is a real leap forward in breaking down barriers, which should be of interest to anyone planning introduction of the software to new or extended audiences. While on this theme of easy deployment, demonstrations can now be produced straight from Mathematica, rather than through Wolfram.

The equals key modifier does more than just invoke helpful translation, by the way, calling greater or lesser Alpha detail according to usage and context. From being a useful resource, Alpha has moved to become a functional part of the Mathematica package. In a larger sense this Mathematica release may, from a vantage point in the future, be seen as the moment when the blurring distinction between thick and thin clients through internet/desktop integration was symbolically abolished.

A prominent theme is integration of another kind, with Wolfram making a determined effort to make Mathematica a natural home for ever larger parts of a holistic development process embracing plurality of tools and environments. There is a clutch of functions to tempt those whose product is C code, allowing them to move content in both directions – not only to export results from Mathematica to C, but to bring code back in for symbolic handling and compile directly to executable. Dynamic Link Libraries (DLLs) are another similar area, functions being called from within a DLL loaded into the Mathematica kernel and exchanging data with it.

Statistics and probability get a very large infusion of methods and distributions, completely transforming Mathematica’s reach and fetch in this area and inviting re-evaluation of the relationship between science market segments for mathematics and statistics software.  Developments group theory, permutations, graphs and networks closely support this – as, of course, do the extensive developments in mathematical methods which you would expect in any new release.

Other areas, from control systems to financial engineering, are at least as well catered for as you might anticipate, often very much more so. In what has for some time been a market area of rapid and exciting development, this is arguably one of Wolfram’s most significant upgrades.