In late 2002 I decided that I wanted to learn more about MathML2.0, and also more about Maxima. So, in December 2002/January 2003, I wrote a new module for Maxima that converts from Maxima expressions to presentation MathML.
So far I've only tested with CLISP under Linux, and with display in Mozilla, so YMMV. All changes are against the 5.9.0rc3 code (I'd be glad to hear from anyone who tries it on other platforms).
In particular, I suspect that IE6 with MathPlayer will have problems with the style of MathML output, because it uses entity references from the MathML DTD, rather than explicit character references.
The main change is a new module in the src
directory, which does the work and is heavily based on the
mactex.lisp
module. As such, this code is covered by the
same GNU
Public License as the
rest of Maxima.
There are also a number of small diffs elsewhere, covering:
MATHML
functionmathml.lisp
module
elsewhere in the codebasetests/
directory to allow easier use of a test tool I wrote
The test tool that I wrote
works on scripts in the tests/
directory, to produce
MathML output from each test case. Example output that includes all
of the tests in the tests/
directory is here (for Mozilla/Netscape)
or here (for IE with MathPlayer). [The
difference between the two is that IE does not support the MathML DTD,
so the page for IE has an explicit list of entity character
references.]