Hey, I am really new to lisp and slime. I am having trouble with
basic language setup with slime.
Specifically, when I am trying to debug a method that is failing I
have two strategies. The first is to call (step(method)), and the
second is to break in the method. From the CLISP interfaces, I could
step into the forms with the first (slow and annoying but it worked),
and in the second I could break and then run code in the context of
the break.
In slime with kubuntu feisty and emacs, I use step and the step menu
comes up. I choose option 3 by typing '3' (step into) and it steps
over every time, so step is completely broken from my perspective. I
am thinking perhaps there is another buffer I should be messing around
in when I step?
Next I choose break and I can't run anything in the repl under the
context of the break. Thus I can't test out different theories on why
the method is not working. Is there some strategy I am failing to
grasp?
Googling for "slime sbcl step" and "slime sbcl debug" didn't really
help much. Thank you for your time, I really like lisp and am very
committed to learning it but so far slime has really let me down. It
seems like a very capable but extremely un-orthodox system.
Finally there are many buffers open when I am using slime. There are:
*inferior-lisp*
*slime-events*
*SLIME Description*
*slime-repl sbcl*.
When I break or step I see (in addition to the above):
*sldb sbcl/4*
*SLIME Source Form*
It would be nice to know what the buffers are used for and what I am
supposed to do with them. I am now going to spend some time with the
documentation to ensure there isn't anything obvious I have missed.
I am certain fairly certain that I must be using it in a non-standard
way (or else why wouldn't step work?), so if there are more effective
ways of using it please let me know. Another plausible option is the
the default slime and sbcl that feisty installs don't play nice with
each other, but I would like feedback before I run around on a wild
goose chase compiling and installing random stuff.
Chris
--
The major difference between a thing that might go wrong and a thing
that cannot possibly go wrong is that when a thing that cannot
possibly go wrong goes wrong it usually turns out to be impossible to
get at and repair - Douglas Adams