[Maxima] About the MathML packages
Robert Dodier
robert.dodier at gmail.com
Wed Jul 18 08:46:43 CDT 2007
On 7/18/07, fwsmail35 <fwsmail35 at aol.com> wrote:
> (%i1) load("load-mathml.lisp")$
> (%i2) mathml();
> Maxima encountered a Lisp error:
> EVAL: undefined function IMEMBER
IMEMBER was a macro which only punts to MEMBER:
(defmacro imember (x l) `(member ,x ,l))
There are two appearances of IMEMBER in the maximaMathML code.
You can grep for them and just change IMEMBER to MEMBER.
I'll commit the change to CVS.
It appears that maximaMathML doesn't know what to do with
Lisp strings. So load("load-mathml"); triggers an error because
load returns a Lisp string, but load("load-mathml")$ is OK.
I guess that's a bug.
HTH
Robert Dodier
PS. Here is a diff.
--- share/contrib/maximaMathML/mathml-maxima.lisp 27 Mar 2007
19:27:14 -0000 1.4
+++ share/contrib/maximaMathML/mathml-maxima.lisp 18 Jul 2007
13:38:32 -0000
@@ -178,7 +178,7 @@
;; returns next non-white non #\> char (or -1?)
(DEFUN next-char ()
(DO (c) (NIL) ; Gobble whitespace
- (IF (IMEMBER (setq c (TYI *in* -1))
+ (IF (MEMBER (setq c (TYI *in* -1))
'(#\> #\TAB #\SPACE #\Linefeed #\return #\Page))
nil
(RETURN c)
@@ -214,7 +214,7 @@
(DO ((C (TYI *in* -1) (TYI *in* -1))
(L () (CONS C L)))
( (or (equal c -1) (and endc (char= C endc))
- (imember c '(#\< #\> #\TAB #\SPACE #\Linefeed #\return #\Page))
+ (member c '(#\< #\> #\TAB #\SPACE #\Linefeed #\return #\Page))
)
(NREVERSE (OR L (NCONS (TYI *in* -1))))
) ; Read at least one char ...
More information about the Maxima
mailing list