Re: Slime 2.30: Discrepancy in eval versus pretty-eval of a `loop' expression
Mark Harig <[email protected]> Sat, 27 Jul 2024 14:21:13 +0000 (UTC)
| Newsgroups | gmane.lisp.slime.devel |
|---|---|
| Message-ID | <[email protected]> |
------=_Part_306609_1695223221.1722090073340 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Thank you for your reply. I had not thought to check for any environment differences because both evaluations were done using Slime from a single Emacs buffer using C-x C-e (bound to `slime-eval-last-expression') and C-c C-p (bound to `slime-pprint-eval-last-expression'). Evaluation of *PRINT-CIRCLE* from the same buffer yields NIL. The following expression has the same problem: (let ((*print-circle* nil)) (loop :for n :in '(a b c) :collect `(,n (gensym)))) C-x C-e yields: =3D> ((A (GENSYM)) (B (GENSYM)) (C (GENSYM))) C-c C-p yields: =3D> ((A . #1=3D((GENSYM))) (B . #1#) (C . #1#)) in a *slime-description* buffer. Are you unable to reproduce these results? Is there some other factor to consider or check for? On Saturday, July = 27, 2024 at 02:58:22 AM EDT, Marco Antoniotti <[email protected]> = wrote: =20 =20 Hi check the *PRINT-CIRCLE* in both cases.=C2=A0 I bet it is set differently. MA On Fri, Jul 26, 2024 at 8:41=E2=80=AFPM Mark Harig <[email protected]> wro= te: Slime Developers, The following was produced using SBCL version 2.3.11, slime-version "2.30", and Emacs version 29.4.=C2=A0 (My copy of slime was installed using the =E2=80=98list-packages=E2=80=99 command in Emacs.) For the following =E2=80=98loop=E2=80=99 expression, the function =E2=80=98slime-eval-last-expression=E2=80=99 returns the correct result: (loop :for n :in '(a b c) :collect `(,n (gensym))) =3D> ((A (GENSYM)) (B (GENSYM)) (C (GENSYM))) But the function =E2=80=98slime-pprint-eval-last-expression=E2=80=99 does n= ot return the correct result.=C2=A0 Instead, it returns: (loop :for n :in '(a b c) :collect `(,n (gensym))) =3D> ((A . #1=3D((GENSYM))) (B . #1#) (C . #1#)) in the *slime-description* buffer.=C2=A0 Is this a known error, that is, is it an acceptable result? Please let me know if there is any other information you need to reproduce or diagnose this potential error. Thank you. -- --=20 Marco Antoniotti, Professor=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 tel. +39 - 02 = 64 48 79 01 DISCo, University of Milan-Bicocca U14 2043=C2=A0=C2=A0 http://dcb.disco.un= imib.it Viale Sarca 336 I-20126 Milan (MI) ITALY =20 ------=_Part_306609_1695223221.1722090073340 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable <div> Thank you for your reply.<br><br>I had not thought to = check for any environment differences because<br>both evaluations were done= using Slime from a single Emacs buffer<br>using C-x C-e (bound to `slime-e= val-last-expression') and C-c C-p<br>(bound to `slime-pprint-eval-last-= expression'). Evaluation of<br>*PRINT-CIRCLE* from the same buffer yie= lds NIL. The following<br>expression has the same problem:<br><br>(let ((*= print-circle* nil))<br> (loop :for n :in '(a b c) :collect `(,n (gensy= m))))<br><br>C-x C-e yields:<br>=3D> ((A (GENSYM)) (B (GENSYM)) (C (GENS= YM)))<br><br>C-c C-p yields:<br>=3D> ((A . #1=3D((GENSYM))) (B . #1#) (C= . #1#))<br>in a *slime-description* buffer.<br><br>Are you unable to repro= duce these results?<br><br>Is there some other factor to consider or check = for? </div> <div class=3D"yahoo_quoted" style=3D"marg= in:10px 0px 0px 0.8ex;border-left:1px solid #ccc;padding-left:1ex;"> = <div style=3D"font-family:'Helvetica Neue', Helvetica, Ari= al, sans-serif;font-size:13px;color:#26282a;"> = <div> On Saturday, July 27, 2024 at 02:58:22 AM E= DT, Marco Antoniotti <[email protected]> wrote: = </div> <div><br></div> <div><b= r></div> <div><div id=3D"yiv= 6217327551"><div><div dir=3D"ltr"><div>Hi</div><div><br clear=3D"none"></di= v><div>check the *PRINT-CIRCLE* in both cases. I bet it is set differ= ently.</div><div><br clear=3D"none"></div><div>MA</div><div><br clear=3D"no= ne"></div></div><br clear=3D"none"><div id=3D"yiv6217327551yqt78247" class= =3D"yiv6217327551yqt2025448892"><div class=3D"yiv6217327551gmail_quote"><di= v dir=3D"ltr" class=3D"yiv6217327551gmail_attr">On Fri, Jul 26, 2024 at 8:4= 1=E2=80=AFPM Mark Harig <<a rel=3D"nofollow noopener noreferrer" shape= =3D"rect" ymailto=3D"mailto:[email protected]" target=3D"_blank" href=3D"m= ailto:[email protected]">[email protected]</a>> wrote:<br clear=3D"non= e"></div><blockquote style=3D"margin:0px 0px 0px 0.8ex;border-left:1px soli= d rgb(204,204,204);padding-left:1ex;" class=3D"yiv6217327551gmail_quote">Sl= ime Developers,<br clear=3D"none"><br clear=3D"none">The following was prod= uced using SBCL version 2.3.11,<br clear=3D"none">slime-version "2.30", and= Emacs version 29.4. (My copy of slime<br clear=3D"none">was installe= d using the =E2=80=98list-packages=E2=80=99 command in Emacs.)<br clear=3D"= none"><br clear=3D"none">For the following =E2=80=98loop=E2=80=99 expressio= n, the function<br clear=3D"none">=E2=80=98slime-eval-last-expression=E2=80= =99 returns the correct result:<br clear=3D"none"><br clear=3D"none">(loop = :for n :in '(a b c) :collect `(,n (gensym)))<br clear=3D"none">=3D> ((A = (GENSYM)) (B (GENSYM)) (C (GENSYM)))<br clear=3D"none"><br clear=3D"none">B= ut the function =E2=80=98slime-pprint-eval-last-expression=E2=80=99 does no= t<br clear=3D"none">return the correct result. Instead, it returns:<b= r clear=3D"none"><br clear=3D"none">(loop :for n :in '(a b c) :collect `(,n= (gensym)))<br clear=3D"none">=3D> ((A . #1=3D((GENSYM))) (B . #1#) (C .= #1#))<br clear=3D"none"><br clear=3D"none">in the *slime-description* buff= er. Is this a known error, that<br clear=3D"none">is, is it an accept= able result?<br clear=3D"none"><br clear=3D"none">Please let me know if the= re is any other information you<br clear=3D"none">need to reproduce or diag= nose this potential error.<br clear=3D"none"><br clear=3D"none">Thank you.<= br clear=3D"none"><br clear=3D"none">--<br clear=3D"none"></blockquote></di= v></div><br clear=3D"all"><br clear=3D"none"><span class=3D"yiv6217327551gm= ail_signature_prefix">-- </span><br clear=3D"none"><div dir=3D"ltr" class= =3D"yiv6217327551gmail_signature"><div dir=3D"ltr"><span style=3D"font-fami= ly:monospace;">Marco Antoniotti, Professor &nb= sp; = tel. +39 - 02 64 48 79 01<br clear=3D"none">DISCo, University of Milan-Bic= occa U14 2043 <a rel=3D"nofollow noopener noreferrer" shape=3D"= rect" target=3D"_blank" href=3D"http://dcb.disco.unimib.it">http://dcb.disc= o.unimib.it</a><br clear=3D"none">Viale Sarca 336<br clear=3D"none">I-20126= Milan (MI) ITALY</span></div></div></div></div></div> </div> = </div> ------=_Part_306609_1695223221.1722090073340--