On 2013-10-07, Leo Butler <l_butler at users.sourceforge.net> wrote:
> (do-symbols (s :maxima)
> (unless (or (= 0 (length (symbol-name s))) (string-not-equal "$" (symbol-name s) :end2 1))
> (if (functionp s) (push s *toplevel-functions*))
> (if (constant s) (push s *toplevel-constants*))
> (if (specialp s) (push s *toplevel-specials*))))
Seems like a promising approach. But maybe the tests need to be more
Maxima-ish? e.g. for functions look for symbols which have the MFEXPR*
(argument-quoting Lisp function) or MEXPR (Maxima ":=" function)
properties.
best
Robert Dodier