[slime-devel] break

Helmut Eller e9626484 at stud3.tuwien.ac.at
Fri Oct 1 12:40:24 UTC 2004


Andras Simon <andras at renyi.hu> writes:

> The HS says:
>
>    break binds *debugger-hook* to nil before attempting to enter the debugger.
>
> Still, with all slime backends (but abcl) I tried, (break) enters the slime
> debugger. How is this arranged?

Each backend requires a different hack.  

CMUCL doesn't need anything because, luckily, it is not ANSI compliant
in this regard.  

In SBCL we set the *invoke-debugger-hook* globally, which is probably
not the best solution, but nobody complained so far.

LispWorks has apparently a generic function
env-internals:environment-display-debugger which can be specialized to
the "environment", whatever that is. Probably something like tty-env
or gui-env.  We could probably create a slime-env if someone cares,
but we simply override the default method.

I don't know why we need no modification for Allegro, but the official
way is probably their *break-hook*.

For CLISP and OpenMCL we simply redefine/advice BREAK.

It would probably be good to have some macro like with-debugger-hook
which binds the *debugger-hook* and does whatever backend specific
stuff is needed for break.

Helmut.





More information about the slime-devel mailing list