Hi Moshe,
I've tried to run plop on SBCL when I load plop I get the following error message (my version of SBCL is 1.0.18):
[...]
; compiling (DEFUN ISA ...)
; file: /home/a-lin/Sources/plop-read-only/src/type.lisp
; in: DEFUN ISA
; (EVERY #'PLOP::ISA (CADR PLOP::Y) (CADR PLOP::X))
; --> LET BLOCK MAP LAMBDA FUNCTION LET
; ==>
; (FUNCALL #:ONCE-ONLY-14 #:G[ISA]11 #:G[ISA]12)
;
; caught ERROR:
; The name of the lambda variable FUNCTION is already in use to name a constant.
; compiling (DEFUN UNION-TYPE ...)
; compiling (DEFUN INTERSECTION-TYPE ...)
; compiling (DEFINE-TEST TYPE-COMPARISON ...)
; compiling (DEFUN NEXT-MOST-GENERAL-TYPES ...)
; compiling (DEFINE-TEST NEXT-MOST-GENERAL-TYPES ...)
; compiling (DEFUN LOOKUP-ATOM-TYPE ...)
; compiling (DEFUN ATOM-TYPE ...)
; compiling (DEFUN FIND-TYPE-OF ...)
; compiling (DEFINE-TEST FIND-TYPE-OF ...)
; compiling (DEFUN LOOKUP-LAMBDA-TYPE ...)
; compiling (DEFUN LAMBDA-TYPE ...)
; compiling (DEFUN LOOKUP-VALUE-TYPE ...)
; compiling (DEFUN VALUE-TYPE ...)
; compiling (LET (#) ...)
; file: /home/a-lin/Sources/plop-read-only/src/type.lisp
; in: DEFUN LOOKUP-EXPR-TYPE
; (FUNCALL ANAPHORA:IT
; (LAMBDA (PLOP::SUBEXPR)
; (OR (PLOP::LOOKUP-EXPR-TYPE PLOP::SUBEXPR PLOP::CONTEXT)
; (RETURN-FROM PLOP::LOOKUP-EXPR-TYPE NIL)))
; (PLOP::ARGS PLOP::EXPR))
;
; caught ERROR:
; The name of the lambda variable FUNCTION is already in use to name a constant.
; compiling (DEFINE-ALL-EQUAL-TEST EXPR-TYPE ...)
; compiling (DEFINE-TEST EXPR-TYPE-WITH-BINDINGS ...)
; compiling (DEFUN ARG-TYPES ...)
debugger invoked on a SB-INT:BUG in thread #<THREAD "initial thread" RUNNING {A8347B9}>:
failed AVER: "(EQ (COMPONENT-KIND NEW) (COMPONENT-KIND OLD))"
This is probably a bug in SBCL itself. (Alternatively, SBCL might have been
corrupted by bad user code, e.g. by an undefined Lisp operation like
(FMAKUNBOUND 'COMPILE), or by stray pointers from alien code or from unsafe
Lisp code; or there might be a bug in the OS or hardware that SBCL is running
on.) If it seems to be a bug in SBCL itself, the maintainers would like to
know about it. Bug reports are welcome on the SBCL mailing lists, which you
can find at <
http://sbcl.sourceforge.net/>.
Type HELP for debugger help, or (SB-EXT:QUIT) to exit from SBCL.
restarts (invokable by number or by possibly-abbreviated name):
0: [TRY-RECOMPILING] Try recompiling type
1: [RETRY ] Retry performing #<ASDF:COMPILE-OP NIL {ABF6751}> on
#<ASDF:CL-SOURCE-FILE "type" {AB7D829}>.
2: [ACCEPT ] Continue, treating #<ASDF:COMPILE-OP NIL {ABF6751}> on
#<ASDF:CL-SOURCE-FILE "type" {AB7D829}> as having been
successful.
3: [ABORT ] Exit debugger, returning to top level.
(SB-INT:BUG "~@<failed AVER: ~2I~_~S~:>")[:EXTERNAL]
I've managed to run plop with CLISP but without MAXIMA, I've installed MAXIMA (it's a package of Ubuntu) but it tells me that the package maxima cannot be found... do you have any idea what the problem might be? Apart from that it works fine with CLISP.
So I tried CMUCL to see if MAXIMA gets loaded but I get the following error message:
Execution of a form compiled with errors:
(C::%DEFUN 'UNION-TYPE
#'(LAMBDA (X . #1=(Y))
(BLOCK UNION-TYPE
. #2=((COND ((EQ X Y) X)
((AND (CONSP X)
(CONSP Y)
(EQ #3=(CAR X) (CAR Y)))
(ECASE #3#
(LIST
`(LIST
,(UNION-TYPE #4=(CADR X) #5=(CADR Y))))
(TUPLE
(IF (SAME-LENGTH-P X Y)
`(TUPLE
,@(MAPCAR #'UNION-TYPE
(CDR X)
(CDR Y)))
T))
(FUNCTION
`(FUNCTION
,(MAPCAR
(LAMBDA (X . #1#)
(OR (INTERSECTION-TYPE X Y)
(RETURN-FROM UNION-TYPE T)))
#4#
#5#)
,(UNION-TYPE (CADDR X) (CADDR Y))))))
((EQ X NIL) Y)
((EQ Y NIL) X)
(T T)))))
NIL
'(DEFUN UNION-TYPE (X . #1#) . #2#))
[Condition of type KERNEL:SIMPLE-PROGRAM-ERROR]
Restarts:
0: [CONTINUE] Return NIL from load of #p"/var/cache/common-lisp-controller/1000/cmucl/local/home/a-lin/Sources/plop-read-only/src/type.x86f".
1: [RETRY ] Retry performing #<ASDF:LOAD-OP NIL {5853CA1D}> on
#<ASDF:CL-SOURCE-FILE "type" {584E71B5}>.
2: [ACCEPT ] Continue, treating #<ASDF:LOAD-OP NIL {5853CA1D}> on
#<ASDF:CL-SOURCE-FILE "type" {584E71B5}> as having been
successful.
3: [ABORT ] Return to Top-Level.
Debug (type H for help)
(C::DO-CALL #<Code Object "Top-Level Form" {586D72DF}> 31 32 4 ...)
Source: Error finding source:
Error in function DEBUG::GET-FILE-TOP-LEVEL-FORM: Source file no longer exists:
target:code/byte-interp.lisp.
Thanks
Nil