With cvs Slime on 2005-02-01, invoking C-c RET on piece of my code generates the following output (with lots of code snipped):
(let () (flet ((#:handler-show-message-11502 (c) (popup-message ...))) (handler-case (let ((#:data-11500 (let ((data (apply ... (append (list x-var y-var) (when ...))))) (if log-p (apply #'%ensure-log-cases data (list x-var y-var)) ...))) (#:original-vars-11501 (when ...)) ...) (if trellis-display-spec (do-trellis-plot :scatterplot icon (:ftn ...) plot (:ftn ...) trellis-display-spec nil log-p #:data-11500 (x-var y-var) #:original-vars-11501) ...)) ...)))
With the latest cvs Slime on 2005-03-14, invoking C-c RET on the same piece of code generates the following output:
(let () (flet ((#1=#:handler-show-message-11502 (c) (popup-message ...))) (handler-case (let ((#2=#:data-11500 (let ((data (apply ... (append (list . #3=(x-var y-var)) (when ...))))) (if log-p (apply #'%ensure-log-cases data (list . #3#)) ...))) (#4=#:original-vars-11501 (when ...)) ...) (if trellis-display-spec (do-trellis-plot :scatterplot icon #5=(:ftn ...) plot #6=(:ftn ...) trellis-display-spec nil log-p #2# #3# #4#) ...)) ...)))
I much prefer the way the 2005-02-01 Slime displays the macroexpanded code. Is there any way to tell Slime NOT to use a bunch of sharpsigns and numbers when displaying the output from C-c RET? Using sharpsigns and numbers make the expanded code hard to read. My memory sucks and I have to search back and forth for a particular definition of a sharpsign reference when there are more than one. There are 7 such sharpsign references in the C-c RET output of this particular piece of code. To make the matters worse, doing a C-c RET on (DO-TRELLIS-PLOT ...) in the C-c RET output from the latest cvs Slime will throw me into the debugger:
Reader error at 556 on #<String-Input Stream>: Object is not labelled #2# [Condition of type READER-ERROR]
Doing the same thing with the 2005-02-01 Slime is no problem.
Best,
-cph