
Slime Developers, There appears to be a problem with Slime’s evaluation of multi-dimensional array literals in some buffers. Evaluation of 1-dimensional array literals does not trigger this problem. 1. At the Slime REPL, no error: CL-USER> #(1 2 3) #(1 2 3) CL-USER> #2A((1 2 3) (4 5 6)) #2A((1 2 3) (4 5 6)) 2. Using the Slime command ‘slime-interactive-eval’, no error: M-x slime-interactive-eval Slime Eval: #(1 2 3) => #(1 2 3) M-x slime-interactive-eval Slime Eval: #2A((1 2 3) (4 5 6)) => #2A((1 2 3) (4 5 6)) However, if these array literals are evaluated in the *slime-scratch* buffer using C-x C-e (bound to ‘slime-eval-last-expression’), then the 1-D array literal is evaluated as expected, while the 2-D array literal triggers an error. 3. *slime-scratch* buffer (or any Lisp buffer associated with a Lisp source file): #(x y z) => #(x y z) #2A((1 2) (3 4)) => Execution of a form compiled with errors. Form: ((1 2) (3 4)) Compile-time error: illegal function call [Condition of type SB-INT:COMPILED-PROGRAM-ERROR] Note that if the multi-dimensional array literal is marked in an Emacs buffer and the command ‘slime-eval-region’ is invoked, then the evaluation does not not trigger the error, above. This problem is occurring with slime 2.30, Emacs 29.4, and SBCL 2.3.11. --