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))))