JMath: A GNU Readline based frontend for Mathematica

JMath is a text frontend for Mathematica. It is to Mathematica what tcsh/bash are to csh/sh. If you are still are using the terminal interface (math), you'll probably like this program.

If you have tried the text frontend that comes with Mathematica then you must know the pain I felt before there was JMath. There is no command history, editing(emacs/vi), symbol completion, file completion or recognition that the window size has changed. These are features I have come to expect from a command line program, and they are in JMath.

Luckily Mathematica provides MathLink, a programming interface, so I could write my own frontend. Actually I didn't have to write all that much thanks to Brian Fox's great Readline library. I just glued the two libraries together. This small feat has brought me much pleasure. I hope it will for you too.

I have compiled the JMath-0.9.16-1 source on Solaris, Linux, Irix and Max OS X. I also provide an RPM spec file so you can easily build a JMath RPM.

According to the license (GPL) of the Readline library, you may not distribute binaries of this program once it is linked with the decidedly not opensource MathLink library from Mathematica, but according to my reading (and IANAL), you may compile and run this program. The JMath code I have written is distributed under the the terms of the GPL.

The obligatory screen shot is provided in the off chance you have never seen a command line interface before.

really cool screen
    shot that should appear in text form here, but wont format
    correctly, so I put it in the comments.  Note that it is
    technically illegal because comments are started and stopped by
    --'s and I use lot's of --'s.  If you can explain the reason for
    this seemingly convoluted html rule, please let me know.


Jim Radford
Last modified: Fri Feb 15 11:04:48 PST 2002