[Ecls-list] Useful backtrace information in the SLIME debugger

Juan Jose Garcia-Ripoll jjgarcia at users.sourceforge.net
Wed Dec 20 17:30:05 UTC 2006


2006/12/20, Dave Roberts <dave at vyatta.com>:
> 1. I get a backtrace that simply consists of calls to "LAMBDA". This
> makes it tremendously difficult sometimes to determine where, exactly,
> my code has bombed out.

Hmm, that means all functions which are called are "anonymous".
Typically this happens with closures created automatically by some
expansion code. I seem to recall that CLOS methods do name the LAMBDA
forms that they create, so I cannot really tell. A simple reproducible
example would be nice.

> 2. How can I get local variable information for each call frame? When I
> select a call frame in the Slime Debugger's Backtrace list, I get
> "SWANK-BACKEND:FRAME-LOCALS not implemented". There are three possibile
> reasons for this that I can think of:
>         A. Swank just needs to implement this. The support is all there on
> ECL's side, but Swank just hasn't taken advantage of it yet.
>         B. ECL doesn't provide the hooks necessary for Swank to get that
> information, so there can't be further implementation in Swank until ECL
> provides the appropriate hooks.

It's more like B. It's probably a matter of one week sitting down and
figuring out what Swank expects from the debugger. ECL already has a
programatical way to access the lisp stack and the list of called
functions, but the output has to be filtered and formatted
appropiately for Slime.

Juanjo

-- 
Dpto. de Fisica Teorica I, Fac. de CC Fisicas, Universidad Complutense,
Ciudad Universitaria s/n Madrid 2804 (Spain)
http://teorica.fis.ucm.es/~jjgarcia/




More information about the ecl-devel mailing list