"Tobias C. Rittweiler" <tcr@...> writes:
> Jeffrey Berger <jeff@...> writes:
>
> > I've seen recommendations that running a shell in emacs is the better
> > way to go than slime, say.
>
> I call that bullshit.
My choice may be biased, Jeffrey, as I've been hacking on Slime in my
spare time, but Slime provides among other things:
* A REPL with convenience shortcuts, and a presentation-like history
so you can get at older results than just through *, **, etc.
* You can compile toplevel forms and load them into the running Lisp
image using `C-c C-c'; you can compile-and-load the whole buffer via
`C-c C-k'.
You can then test the new functions at the REPL. This makes a nice
interactive development experience.
* If an error is signalled, the Slime Debugger pops up with a list of
provided restarts, and a backtrace where you can toggle individual
frames for details like local variable bindings. You can inspect the
values displayed there. You can also restart from frames.
(This can probably also be done with your implementation's default
debugger, it's a question about convenience.)
* An inspector. (So you can find out what all slots of objects are
bound to.)
* Powerful code browsing: `M-.' on a symbol brings you to its
definition, may it be a function, macro, object, ... etc. `M-,'
brings you back to the original location. These two commands work in
a stack-like manner.
* Symbol completion, and misc. other things.
* The ability to connect to a running Lisp instance on a remote
server, and use all the stuff listed above on that Lisp instance.
-T.
|