Closed catap closed 8 months ago
Hi, please see https://gitlab.com/gnu-clisp/clisp/-/merge_requests/3 Looks like there's been a PR open to add PLN's to clisp for a while that has not been merged
Looking at my usage of pln's, I think I'd be OK with forgoing them, though I do wish clisp would accept that PR already since they are much nicer to use compared to alternatives
Yeah, but clips aren’t well supported these days :(
and let me be frankly it usually has it’s own point of view 🤓
100% agreed, CLISP not supporting PLN is a constant pain in the neck.
See 01da2ed0cae1b9c954dc8603e17d9f768441d97e and 6652ed9eb0a1db5ce211c135e11ef3b7f61c4079
I'm still not sold on them as it makes writing the unit tests especially onerous. On the main project the changes are minimal. I'll let this sit and may revert them later. I'm curious to hear why people are using clisp for anyways
Honestly at this point I only use Clisp to compile SBCL. I applaud your commitment to Clisp but I have adopted the philosophy that PLNs are too useful to be held back by Clisp.
@catap It is reverse for me. Build with SBCL is broken https://github.com/Zulu-Inuoe/jzon/issues/70 while build with CLISP works:
---> Building cl-com.inuoe.jzon
xinstall: mkdir /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_lisp_cl-com.inuoe.jzon/cl-com.inuoe.jzon/work/build
xinstall: mkdir /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_lisp_cl-com.inuoe.jzon/cl-com.inuoe.jzon/work/build/source
xinstall: mkdir /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_lisp_cl-com.inuoe.jzon/cl-com.inuoe.jzon/work/build/system
Execute asdf:build-op at com.inuoe.jzon-tests by CLISP
#P"/opt/local/lib/clisp-2.49.95+/dynmod/asdf.lisp"
(*DEFAULT-PATHNAME-DEFAULTS*
#P"/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_lisp_cl-com.inuoe.jzon/cl-com.inuoe.jzon/work/build/system/"
#P"/opt/local/share/common-lisp/system/")
WARNING: Adding method
#<STANDARD-METHOD (#<STANDARD-CLASS TEST-OP> (EQL #<SYSTEM
"com.inuoe.jzon-tests">))> to an already called generic function
#<STANDARD-GENERIC-FUNCTION PERFORM>
WARNING: Adding method
#<STANDARD-METHOD (#<STANDARD-CLASS TEST-OP> (EQL #<SYSTEM
"trivial-backtrace">))> to an already called generic function
#<STANDARD-GENERIC-FUNCTION OPERATION-DONE-P>
WARNING: Adding method
#<STANDARD-METHOD
:AROUND (#<STANDARD-CLASS ASDF/LISP-ACTION:LOAD-OP>
#<STANDARD-CLASS ASDF/LISP-ACTION:CL-SOURCE-FILE>)>
to an already called generic function
#<STANDARD-GENERIC-FUNCTION ASDF/ACTION:PERFORM>
WARNING: in #:|4 11 (EVAL-WHEN (:COMPILE-TOPLEVEL :LOAD-TOPLEVEL :EXECUTE)
(UNLESS # #) ...)-2-1| in lines 4..11 : Function IMPL-MAP-BACKTRACE
was already defined in file
#P"/opt/local/share/common-lisp/source/cl-trivial-backtrace/dev/map-backtrace.lisp"
in lines 60..125
WARNING: in #:|4 11 (EVAL-WHEN (:COMPILE-TOPLEVEL :LOAD-TOPLEVEL :EXECUTE)
(UNLESS # #) ...)-2-2| in lines 4..11 : Function
PRINT-BACKTRACE-TO-STREAM
was already defined in file
#P"/opt/local/share/common-lisp/source/cl-trivial-backtrace/dev/backtrace.lisp"
in lines 56..109
WARNING: in RUN! in lines 279..289 : Mixing &OPTIONAL and &KEY in lambda list
(&OPTIONAL (TEST-SPEC *SUITE*) &KEY
((:PRINT-NAMES *PRINT-NAMES*) *PRINT-NAMES*))
is bad design
WARNING: LOOP: FOR clauses should occur before the loop's main body
WARNING: LOOP: FOR clauses should occur before the loop's main body
WARNING: LOOP: FOR clauses should occur before the loop's main body
WARNING: LOOP: FOR clauses should occur before the loop's main body
WARNING: LOOP: FOR clauses should occur before the loop's main body
WARNING: LOOP: FOR clauses should occur before the loop's main body
WARNING: LOOP: FOR clauses should occur before the loop's main body
WARNING: LOOP: FOR clauses should occur before the loop's main body
WARNING: LOOP: FOR clauses should occur before the loop's main body
WARNING: LOOP: FOR clauses should occur before the loop's main body
WARNING: LOOP: FOR clauses should occur before the loop's main body
WARNING: LOOP: FOR clauses should occur before the loop's main body
WARNING: LOOP: FOR clauses should occur before the loop's main body
WARNING: (class-precedence-list
#<STANDARD-CLASS FLEXI-OUTPUT-STREAM :INCOMPLETE>) and
(class-precedence-list
#<STANDARD-CLASS FUNDAMENTAL-CHARACTER-OUTPUT-STREAM>) are
inconsistent
WARNING: (class-precedence-list
#<STANDARD-CLASS FLEXI-INPUT-STREAM :INCOMPLETE>) and
(class-precedence-list
#<STANDARD-CLASS FUNDAMENTAL-CHARACTER-INPUT-STREAM>) are
inconsistent
WARNING: (class-precedence-list #<STANDARD-CLASS FLEXI-IO-STREAM :INCOMPLETE>)
and (class-precedence-list #<STANDARD-CLASS FLEXI-OUTPUT-STREAM>) are
inconsistent
WARNING: (class-precedence-list #<STANDARD-CLASS FLEXI-OUTPUT-STREAM>) and
(class-precedence-list
#<STANDARD-CLASS FUNDAMENTAL-CHARACTER-OUTPUT-STREAM>) are
inconsistent
WARNING: (class-precedence-list #<STANDARD-CLASS FLEXI-INPUT-STREAM>) and
(class-precedence-list
#<STANDARD-CLASS FUNDAMENTAL-CHARACTER-INPUT-STREAM>) are
inconsistent
WARNING: (class-precedence-list #<STANDARD-CLASS FLEXI-IO-STREAM>) and
(class-precedence-list #<STANDARD-CLASS FLEXI-OUTPUT-STREAM>) are
inconsistent
WARNING: in CHECK in lines 53..59 : variable READER is assigned but not read
WARNING: in #:|69 71 (DEFMETHOD FORMAT-DOCUMENTATION (# TYPE VAR ...)
...)-18-1-1| in lines 69..71 : variable TYPE is not used.
Misspelled or missing IGNORE declaration?
WARNING: in #:|69 71 (DEFMETHOD FORMAT-DOCUMENTATION (# TYPE VAR ...)
...)-18-1-1| in lines 69..71 : variable VAR is not used.
Misspelled or missing IGNORE declaration?
WARNING: in FLOAT-INFINITY-P in lines 10..28 : SHORT-FLOAT-NEGATIVE-INFINITY
is neither declared nor bound,
it will be treated as if it were declared SPECIAL.
WARNING: in FLOAT-INFINITY-P in lines 10..28 : SHORT-FLOAT-POSITIVE-INFINITY
is neither declared nor bound,
it will be treated as if it were declared SPECIAL.
WARNING: in FLOAT-INFINITY-P in lines 10..28 : SINGLE-FLOAT-NEGATIVE-INFINITY
is neither declared nor bound,
it will be treated as if it were declared SPECIAL.
WARNING: in FLOAT-INFINITY-P in lines 10..28 : SINGLE-FLOAT-POSITIVE-INFINITY
is neither declared nor bound,
it will be treated as if it were declared SPECIAL.
WARNING: in FLOAT-INFINITY-P in lines 10..28 : DOUBLE-FLOAT-NEGATIVE-INFINITY
is neither declared nor bound,
it will be treated as if it were declared SPECIAL.
WARNING: in FLOAT-INFINITY-P in lines 10..28 : DOUBLE-FLOAT-POSITIVE-INFINITY
is neither declared nor bound,
it will be treated as if it were declared SPECIAL.
WARNING: in FLOAT-INFINITY-P in lines 10..28 : LONG-FLOAT-NEGATIVE-INFINITY is
neither declared nor bound,
it will be treated as if it were declared SPECIAL.
WARNING: in FLOAT-INFINITY-P in lines 10..28 : LONG-FLOAT-POSITIVE-INFINITY is
neither declared nor bound,
it will be treated as if it were declared SPECIAL.
WARNING: in WITH-FLOAT-TRAPS-MASKED in lines 44..128 : FIND was called with 1
arguments, but it requires at least 2 arguments.
WARNING: in WITH-FLOAT-TRAPS-MASKED in lines 44..128 : variable TRAPS is not
used.
Misspelled or missing IGNORE declaration?
WARNING: in WITH-ROUNDING-MODE in lines 130..175 : variable MODE is not used.
Misspelled or missing IGNORE declaration?
WARNING: in WITH-ROUNDING-MODE in lines 130..175 : variable BODY is not used.
Misspelled or missing IGNORE declaration?
WARNING: Redefining metaobject class
#<FUNCALLABLE-STANDARD-CLASS STANDARD-GENERIC-FUNCTION> has no
effect.
WARNING: LOOP: FOR clauses should occur before the loop's main body
WARNING: in #:|1128 1156 (MACROLET (#) (DEFGENERIC COERCED-FIELDS #
...))-59-1| in lines 1128..1156 : variable ELEMENT is not used.
Misspelled or missing IGNORE declaration?
WARNING: in %WRITE-INDENTATION in lines 1347..1355 : variable _ is assigned
but not read
#<ASDF/OPERATE:BUILD-OP> ;
#<ASDF/PLAN:SEQUENTIAL-PLAN #x102B947E>
Execute asdf:build-op at com.inuoe.jzon by CLISP
#P"/opt/local/lib/clisp-2.49.95+/dynmod/asdf.lisp"
(*DEFAULT-PATHNAME-DEFAULTS*
#P"/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_lisp_cl-com.inuoe.jzon/cl-com.inuoe.jzon/work/build/system/"
#P"/opt/local/share/common-lisp/system/")
WARNING: Adding method
#<STANDARD-METHOD (#<STANDARD-CLASS TEST-OP> (EQL #<SYSTEM
"flexi-streams">))> to an already called generic function
#<STANDARD-GENERIC-FUNCTION PERFORM>
WARNING: (class-precedence-list
#<STANDARD-CLASS FLEXI-OUTPUT-STREAM :INCOMPLETE>) and
(class-precedence-list
#<STANDARD-CLASS FUNDAMENTAL-CHARACTER-OUTPUT-STREAM>) are
inconsistent
WARNING: (class-precedence-list
#<STANDARD-CLASS FLEXI-INPUT-STREAM :INCOMPLETE>) and
(class-precedence-list
#<STANDARD-CLASS FUNDAMENTAL-CHARACTER-INPUT-STREAM>) are
inconsistent
WARNING: (class-precedence-list #<STANDARD-CLASS FLEXI-IO-STREAM :INCOMPLETE>)
and (class-precedence-list #<STANDARD-CLASS FLEXI-OUTPUT-STREAM>) are
inconsistent
#<ASDF/OPERATE:BUILD-OP> ;
#<ASDF/PLAN:SEQUENTIAL-PLAN #x102BA0C6>
---> Staging cl-com.inuoe.jzon into destroot
I'm using clisp which is build from https://gitlab.com/gnu-clisp/clisp/-/commit/66924971790e4cbee3d58f36e530caa0ad568e5f
SBCL, ECL, ABCL and CCL works fine