[Openmcl-devel] debugging debugging
Andrew Shalit
alms at clozure.com
Thu May 7 17:00:00 PDT 2009
On May 7, 2009, at 7:33 PM, Gary Byers wrote:
>
> Another subpoptimal solution (which may be better than the status quo)
> is to choose to do one thing (enter a break loop) and completely
> ignore
> the other (event processing) and enter a break loop with I/O
> redirected
> to the AltConsole window. (AltConsole is a little ObjC program that
> can sort of act as a simple termimal-like device for a remote process,
> like the CCL IDE). Event processing in the lisp GUI application would
> stop and you wouldn't have access to GUI backtrace/inspector/other
> tools
> while trying to debug things, but the debugging that you'd be doing
> would
> be taking place in the dynamic context where the error occurred
> (unlike
> the current "backtrace and run") behavior. Yes, this is far from
> ideal,
> but being able to browse around the backtrace and type expressions to
> a break loop may make debugging easier than it has been and seems like
> it's at least a step in the right direction.
A couple of months ago we briefly discussed a less suboptimal
variation of this approach. The AltConsole is currently a simple
terminal-like device written in Objective C. There's no reason, in
theory, why the AltConsole couldn't be a more sophisticated GUI
application written in another programming language, Lisp even. It
would still run as a separate application, but it could communicate
with the CCL via something akin to a Slime/Swank protocol, and it
could present things like backtraces and inspector windows in nice
Macintosh windows. It would even be theoretically possible to reuse
some of the CCL IDE code for this purpose. (I'm not familiar with
that code enough to know whether that's a practical approach.)
At least, that's how I remember the conversation. Someone else from
Clozure, please correct me if I'm misremembering.
I think extending the AltConsole in this way is beyond the scope of
what we can do within the current CCL IDE pledge drive funding. But
we might be able to find time to do it gratis, or some user(s) could
work on it, or could fund it.
More information about the Openmcl-devel
mailing list