>>>>> "Sam" == Sam Halliday <fommil@yahoo.ie> writes:
Sam> (C1) diff(sin(x),x);
Sam> (D1) COS(x)
Sam> the result is as expected. if however, i use build maxima with clisp
Sam> CVS, i get this;
Sam> (C1) diff(sin(x),x);
Sam> d
Sam> (D1) -- (SIN(x))
Sam> dx
This is caused by a recently discovered bug. CVS CMUCL also fails in
this way.
Here is a potential solution. Just use the following replacement in
src/commac.lisp.
Ray
(defun maclisp-typep (x &optional type)
(cond (type
(lisp:let ((pred (get type 'ml-typep)))
(cond (pred
(funcall pred x))
(t (typep x type)))))
(t
(typecase x
(cl:cons 'list)
(cl:fixnum 'fixnum)
(cl:integer 'bignum)
(cl:float 'flonum)
(cl:number 'number)
(cl:array 'array)
(cl:hash-table 'hash-table)
(t
(type-of x-type))))))