[slime-devel] Slime values display and debug display

Raymond Toy toy at rtp.ericsson.se
Tue Nov 18 16:58:26 UTC 2003


I've noticed that when a function returns multiple values, slime
concats them together and displays them on one line, separated by
commas.  This works fine, until you get vector or other large object.
Then the display is not so good:

0.3314521116706366d0, 3.6798576593736937d-15, 42, 0, #(((0.0d0
                                                         0.7853981633974483d0)
                                                        0.30842513753404244d0
                                                        3.4242068906347456d-15)
                                                       ((0.7853981633974483d0
                                                         1.0d0)
                                                        0.023026974136594155d0
                                                        2.5565076873894826d-16)), #(1
                                                                                    2
                                                                                    0 ...)

Is there some way to control this?  I do not mind the CMUCL way of
displaying each value on a separate line.

Also, in sldb, is there a way to get the backtrace to pprint the args?
I've become accustomed to the way CMUCL displays it, so I find it hard
to see the args anymore.  Here is what sldb produces:


0: (DQAWO 15 #<Interpreted Function (LAMBDA (X) (LET # #)) {41B50251}> 0.0d0 5.0d0 2.0d0 0.0d0 1.0d-8 0.0d0 0.0d0 0 0 200 800 0 #(0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ...) #(0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 ...) NIL NIL)[:EXTERNAL]

Here is what happens in *inferior-lisp*:

(DQAWO 15
       #<Interpreted Function (LAMBDA # #) {41423F11}>
       0.0d0
       5.0d0
       2.0d0
       0.0d0
       1.0d-8
       0.0d0
       0.0d0
       0
       0
       200
       800
       0
       #(0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
         0 0 0 0 0 ...)
       #(0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0
         0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0
         0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0
         0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 0.0d0 ...)
       NIL
       NIL)[:EXTERNAL]

I find the latter FAR easier to read.


Anyway, I've finally switched over from ilisp because slime can do
what I want and only has minor issues like the above.  

Keep up the good work!

Ray





More information about the slime-devel mailing list