Clisp success, Documentation stuff



Moses Glasner wrote:

> James Amundson writes:
>  >
>  > We aren't dropping GCL, but we will no longer rely on it. That's all. In
>  > order for GCL to remain a viable option beyond the near future, someone
>  > will have to take over its maintenance.
>
> With the latest CVS compiled under clisp-2.27 when doing load
> on several packages, eg, fourie, ineq, vect, kach, functs, desol,
> I get the following:
>
> (C3) load(fourie);
>
> *** - FUNCALL: argument (LAMBDA (U) (MEMQ U '(T NIL))) is not a
> function.
> To get a function in the current environment, write (FUNCTION ...).
> To get a function in the global environment, write (COERCE
> '... 'FUNCTION).
> 1. Break [17]>
>
> But with maxima-pre59 compiled under gcl-2.4.0 all these packages load.
> Is this a problem with Clisp or am I doing something wrong?
>
> --Moses
>

The trouble is caused by
  define_varaibe(foo,true,boolean);
The patch to trmode.lisp is attached.

Vadim

--

[ Vadim V. Zhytnikov  <vvzhy@mail.ru>  <vvzhy@td.lpi.ac.ru> ]

diff -uNr maxima-5.6-orig/src/trmode.lisp maxima-5.6-1/src/trmode.lisp
--- maxima-5.6-orig/src/trmode.lisp	Sat Feb 24 05:21:59 2001
+++ maxima-5.6-1/src/trmode.lisp	Fri Nov 23 12:18:38 2001
@@ -220,12 +220,12 @@
   (COND ((or val-givenp (not (eq v val)))
 	 ; hack because macsyma PROG binds variable
 	 ; to itself. 
-	 (let ((CHECKER (ASSQ MODE '(($FLOAT . FLOATP)
+	 (let ((CHECKER (ASSQ MODE `(($FLOAT . FLOATP)
 				     ($FIXNUM . INTEGERP)
 				     ($NUMBER . NUMBERP)
 				     ($LIST . $LISTP)
-				     ($BOOLEAN . (LAMBDA (U)
-						   (MEMQ U '(T NIL)))))))
+				     ($BOOLEAN . ,#'(LAMBDA (U)
+ 						      (MEMQ U '(T NIL)))))))
 	       (nchecker (assq mode '(($float . $real)
 				      ($fixnum . $integer)
 				      ($complex . $complex))))