Differences between Maxima and Macsyma and GPL vs. commercial version



> Since maxima uses Lisp, and Lisp has doc strings for functions, I've
> always thought describe should look there instead of some mostly
> out-of-date info file somewhere.

Very few Maxima functions or variables currently have docstrings.  So
someone has to add them.

The current documentation text is really not designed for random access
at all.  It is extracted from a traditional reference manual.

The existing traditional reference manual is not very good, anyway.

Docstrings are in some sense a detail -- just a convenient way of
looking up a string given a symbol.

Docstrings appear to currently be broken in GCL 2.5.0 on Windows.

Docstrings as normally used do not support any sort of formatting (HTML,
MathML, whatever), hyperlinks, or global structure (this function is
part of the such-and-such subsystem) so are a very impoverished format.

Adding docstrings to the code base as opposed to a separate
documentation system would mean that documentation would live in at
least TWO places, which would inevitably be out of synch.  Though
docstring-style documentation is different from reference-manual-style
documentation, they should probably live in the same place to make it
easy to maintain them.

All in all, docstrings are a trivial detail compared to the substantial
problem of (a) writing good documentation; and (b) presenting it well.

       -s