Subject: Interested in a Mac OS X (Cocoa) interface?
From: Tim Lahey
Date: Sat, 14 Jul 2007 23:02:01 -0400
> Date: Sat, 14 Jul 2007 21:34:34 -0400 (EDT)
> Subject: Interested in a Mac OS X (Cocoa) interface?
> To: maxima at math.utexas.edu
>
> I'm now interested in writing a Maxima environment in Cocoa for Mac OS X. wxMaxima and the TeXMacs interface are pretty good, but getting either of them up and running on a Mac is no simple task. (I still haven't gotten wxMaxima to work perfectly yet) And while both interfaces have sufficient functionality, they aren't very pretty, and aren't the easiest to use for novices.
I use Maxima on OS X and I'm certainly interested in a Cocoa
interface. I've been maintaining my own Macports Portfile since the
one that comes with Macports is lagging.
I've been using SBCL which has precluded me from using wxMaxima since
it only seems to support clisp.
>
> Maxima is probably the best computer algebra system I've used (I've always hated Mathematica's syntax), and I'd like to make it look great on the Mac. Some of the ideas I had in mind are:
>
> - a built-in equation renderer with WYSIWYG editing (similar to the one in the OS X Grapher application)
> - a palette of commonly-used functions and operators
> - graphing support (maybe interactive)
> - everything rolled into one package for easy installation
I suspect either using LaTeX behind the scenes or a re-implementation of the
LaTeX equation code (like jsMath) would be the best choice for the first point.
The graphing support could be handled through something like Aquaterm (which
might be able to be embedded with the app (along with gnuplot).
>
> About the last point: Rather than requiring an installed Maxima and Lisp, I'd like to include Maxima with the GUI. Is it possible to build a standalone binary version of Maxima that doesn't require a Lisp interpreter to run? I think this is really a key point and will expand Maxima's audience beyond the command-line techies. The user should just be able to drag the downloaded app into the Applications folder and get right down to business.
>
I'm not sure you could get away without requiring a Lisp. One option
would be if a Lisp could be bundled up as a framework (kind of like
how Python works on OS X). This would allow it to be included in the
application bundle. Besides, you'd want to be able to allow the user
to compile in new lisp functions.
I think the first step is to try to get a GUI up and running and then
worry about packaging it. If you're interesting in help, I think
getting a code repository up and running somewhere (e.g.,
http://code.google.com/hosting/) along with appropriate mailing lists
is an idea.
Cheers,
Tim
---
Tim Lahey
PhD Candidate
University of Waterloo
Systems Design Engineering