Re: slime 2.30: Error when evaluating multi-dimensional array literals.
Stas Boukarev <[email protected]> Thu, 30 Jan 2025 21:24:59 +0300
| Newsgroups | gmane.lisp.slime.devel |
|---|---|
| Message-ID | <CAF63=11Osrh0dBUst7mQ9AYx8J10dYX-fEsZaQh_-n=r67hw_w@mail.gmail.com> |
Yes. #2A is not read correctly. But then, do you really need to be evaluating constants in buffers? On Thu, Jan 30, 2025 at 9:21=E2=80=AFPM Mark Harig <[email protected]> wro= te: > > Slime Developers, > > There appears to be a problem with Slime=E2=80=99s 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 =E2=80=98slime-interactive-eval=E2=80=99, n= o error: > > M-x slime-interactive-eval > Slime Eval: #(1 2 3) > =3D> #(1 2 3) > > M-x slime-interactive-eval > Slime Eval: #2A((1 2 3) (4 5 6)) > =3D> #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 > =E2=80=98slime-eval-last-expression=E2=80=99), then the 1-D array lite= ral 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) > =3D> #(x y z) > > #2A((1 2) (3 4)) > =3D> > 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 > =E2=80=98slime-eval-region=E2=80=99 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. > > --