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:
=> ((A (GENSYM)) (B (GENSYM)) (C (GENSYM)))

C-c C-p yields:
=> ((A . #1=((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 <marco.antoniotti@unimib.it> wrote:


Hi

check the *PRINT-CIRCLE* in both cases.  I bet it is set differently.

MA


On Fri, Jul 26, 2024 at 8:41 PM Mark Harig <idirectscm@aim.com> wrote:
Slime Developers,

The following was produced using SBCL version 2.3.11,
slime-version "2.30", and Emacs version 29.4.  (My copy of slime
was installed using the ‘list-packages’ command in Emacs.)

For the following ‘loop’ expression, the function
‘slime-eval-last-expression’ returns the correct result:

(loop :for n :in '(a b c) :collect `(,n (gensym)))
=> ((A (GENSYM)) (B (GENSYM)) (C (GENSYM)))

But the function ‘slime-pprint-eval-last-expression’ does not
return the correct result.  Instead, it returns:

(loop :for n :in '(a b c) :collect `(,n (gensym)))
=> ((A . #1=((GENSYM))) (B . #1#) (C . #1#))

in the *slime-description* buffer.  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.

--


--
Marco Antoniotti, Professor                   tel. +39 - 02 64 48 79 01
DISCo, University of Milan-Bicocca U14 2043   http://dcb.disco.unimib.it
Viale Sarca 336
I-20126 Milan (MI) ITALY