common-lisp-jupyter
common-lisp-jupyter copied to clipboard
"Simple Program Error" when evaluating any expression
I'm not sure if you can help with this but I'm hoping you can.
The kernel loads fine but when I evaluate even a simple expression like:
(+ 3 4)
I get:
SIMPLE-PROGRAM-ERROR: invalid number of arguments: 7
3: ((FLET "H1" :IN JUPYTER:EVALUATE-CODE) invalid number of arguments: 7)
4: (SB-KERNEL::%SIGNAL invalid number of arguments: 7)
5: (ERROR invalid number of arguments: 7)
6: (SB-INT:%PROGRAM-ERROR invalid number of arguments: ~S 7)
7: ("INVALID-ARG-COUNT-ERROR" 7)
8: (SB-KERNEL:INTERNAL-ERROR #.(SB-SYS:INT-SAP #X7FFFF476D980) #
What version of SBCL do you have?
Thanks for responding :-)
My SBCL is 1.4.5.debian
Not sure if that is the issue, but you should probably upgrade SBCL since v1.4.5 is over two years old.
If you are on Debian Bullseye I have binaries for v2.1.6 if you can't find them elsewhere.
https://github.com/yitzchak/mpr/releases/tag/sbcl_2.1.6-1
Thanks for the suggestions, unfortunately my OS is Linux Mint 19.2 (based on Ubuntu 18.04 bionic) and this, evidently, doesn't support SBCL beyond v1.4.5... sigh. So I'm not sure I'll be able to get the common lisp jupyter kernel to work.
Can you not upgrade the OS? Just curious.
As a last resort you could bootstrap current SBCL.
I've tried upgrading my installation on several occasions in the past and it always left my system unstable. I would have to do a clean install and that would entail a lot of work to get my system back to where it is now; not something I'm willing to do at this point.
What do you mean by "bootstrap current SBCL"?
SBCL is built by bootstrapping on top of another CL implementation. It is a derivative of CMUCL which had to be bootstrapped on itself. SBCL can be bootstrapped on just about any CL implementation.
http://sbcl.org/getting.html#compile
As an aside I used to use the Debian/Ubuntu distributions and eventually migrated to Arch. It requires a bit more expertise to maintain, but rolling releases like Arch (there are others) are easier for long term usage since you never have large upgrades. Just my two cents.