[slime-devel] Weird one to do with pretty-printing

Peter Seibel peter at javamonkey.com
Wed Feb 25 22:50:42 UTC 2004

Okay, this one is quite strange. First define this function:

  (defun foo ()
    (write (macroexpand-1 '(with-open-file (in "foo.txt") (read in))) :pretty t))

Then invoke it several times. What I observe is that the body of the
let moves to the right each time I invoke FOO, as if the
pretty-printing stream is somehow preserving some information about
what column it is indenting to from call to call. I believe I had
observed this behavior before when I was screwing around with
pretty-printing logical blocks. This weird shifting only happens in
the SLIME repl, the same function invoked from the *inferior-lisp*
buffer works as expected. I've observed this in both OpenMCL and in
Allegro on GNU/Linux.


Peter Seibel                                      peter at javamonkey.com

         Lisp is the red pill. -- John Fraser, comp.lang.lisp

More information about the slime-devel mailing list