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
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