[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