I find that debugging code involving the pprint functions (pprint-logical-block ...) is difficult because *sldb* continues to use the pprint control variables in effect when the debugger is entered. Perhaps *sldb* needs to rebind those variables to the "default state".
Lynn Quam quam@ai.sri.com writes:
I find that debugging code involving the pprint functions (pprint-logical-block ...) is difficult because *sldb* continues to use the pprint control variables in effect when the debugger is entered. Perhaps *sldb* needs to rebind those variables to the "default state".
I added a bunch of *sldb-print-{level,circular..}* variables and the debugger uses them to binds the correspond *print-{level..}*.
Let's see if people like the new default settings.
Helmut.
On Sun, 17 Oct 2004 21:15:29 +0200, Helmut Eller e9626484@stud3.tuwien.ac.at wrote:
I added a bunch of *sldb-print-{level,circular..}* variables and the debugger uses them to binds the correspond *print-{level..}*.
Let's see if people like the new default settings.
I now get (AllegroCL 7.0beta) message that look like
No methods applicable for generic function # with args # of classes # [Condition of type PROGRAM-ERROR]
Restarts: 0: [CONTINUE] Try calling it again 1: [ABORT] Abort handling SLIME request. 2: [ABORT] Abort entirely from this (lisp) process.
Backtrace: 0: (SWANK::DEBUG-IN-EMACS #) 1: (#) 2: (SWANK:SWANK-DEBUGGER-HOOK # #) 3: (CERROR "Try calling it again" PROGRAM-ERROR :FORMAT-CONTROL "No methods applicable for generic function ~s with args ~s of classes ~s" :FORMAT-ARGUMENTS #) 4: (# # #) 5: (# #) 6: (# #) 7: (# #) 8: (# #)
which is not very helpful. I also can't seem to find these new variables you're talking about. Where are they and where am I supposed to set them?
Thanks, Edi.
Edi Weitz edi@agharta.de writes:
No methods applicable for generic function # with args # of classes # [Condition of type PROGRAM-ERROR]
Hehe, I really botched it.
which is not very helpful. I also can't seem to find these new variables you're talking about. Where are they and where am I supposed to set them?
The variables are created by the define-printer-variables macro and are concatenated from the prefix `sldb-print' and `level', `length' etc. ~/.swank.lisp is probably a good place to set those variables.
I wrongly had used `sldb' as prefix, but there was already a *sldb-level* variable which is something like 1 or 0, so you didn't see anything.
Should be fixed now.
Helmut.
Helmut Eller e9626484@stud3.tuwien.ac.at writes:
Edi Weitz edi@agharta.de writes:
No methods applicable for generic function # with args # of classes # [Condition of type PROGRAM-ERROR]
Hehe, I really botched it.
which is not very helpful. I also can't seem to find these new variables you're talking about. Where are they and where am I supposed to set them?
The variables are created by the define-printer-variables macro and are concatenated from the prefix `sldb-print' and `level', `length' etc. ~/.swank.lisp is probably a good place to set those variables.
I wrongly had used `sldb' as prefix, but there was already a *sldb-level* variable which is something like 1 or 0, so you didn't see anything.
Should be fixed now.
On a maybe related note, should there be a SLIME version of *print-gensym*? For a while I had a small change to my local swank.lisp to define (and use at seemingly appropriate places) *slime-pprint-gensym* which I set to NIL in my .swank.lisp so macro expansions would look more like real code. Your new code made that variable obsolete--i.e. it needs to be integrated into define-printer-variables but in the 15 seconds I spent looking at your change I didn't see exactly what I should change to reitroduce such a variable. At any rate, perhaps define-printer-variables shoud just go ahead and create variables for *all* the printer control variables. It seems that define-printer-variables doesn't define variables corresponding to:
*print-array* *print-base* *print-gensym* *print-lines* *print-miser-width* *print-radix*
-Peter
Peter Seibel peter@javamonkey.com writes:
At any rate, perhaps define-printer-variables shoud just go ahead and create variables for *all* the printer control variables. It seems that define-printer-variables doesn't define variables corresponding to:
*print-array* *print-base* *print-gensym* *print-lines* *print-miser-width* *print-radix*
I don't know exactly what those do, but I included them.
Helmut.
On Mon, 18 Oct 2004 00:06:10 +0200, Helmut Eller e9626484@stud3.tuwien.ac.at wrote:
Should be fixed now.
Yes, it is. Thanks!