Differences between Maxima and Macsyma and GPL vs. commercial version
Subject: Differences between Maxima and Macsyma and GPL vs. commercial version
From: Raymond Toy
Date: 02 Apr 2003 13:24:49 -0500
>>>>> "Richard" == Richard Fateman <fateman@cs.berkeley.edu> writes:
Richard> Docstrings might help to remind you of something you
Richard> already knew, but strikes me as a bad idea for being
Richard> a primary documentation tool. You need stuff described
I wasn't proposing it as the primary tool for documentation. At least
someone thought enough of it to make a Lisp tool to extract docstring
to produce a LaTeX reference manual out of it.
And I do use docstrings in emacs as a primary tool for documentation.
The real documentation is usually out-of-date, so short of reading the
code, the docstrings are usually quite helpful. If nothing else,
they're pointers to what can be done and what else to look for.
I also use it a lot in cmucl to figure out how something works,
including compiler internals.
Richard> in context or else it is all terribly repetitive.
Richard> (defun third(a)" See chapter X for complete documentation
Richard> on user-level list selection and construction programs.
Richard> Third selects the 3rd element from a list.
Richard> input: any macsyma general expression
Richard> output: third element if there is one
Richard> Possible errors:
Richard> Time:
Richard> algorithm description:
Richard> "
Richard> body of function...)
But the user manual has this same kind of problem. There's a lot of
context that you need to know before you actually use it.
If I had written the docstring for third, I would have just said
"returns the third element of a list, if there is one"
That probably would have been clear enough to anyone looking for some
function to extract the third element of a list. If you didn't know
what a list was, you wouldn't have been looking for third. :-)
Anyway, docstrings won't solve the problem of not having a good
reference manual or user's guide.
Ray