This is the mail archive of the
mailing list for the Guile project.
Re: How does the debugger work ?
Mikael Djurfeldt <email@example.com> writes:
> Thierry Bezecourt <firstname.lastname@example.org> writes:
> The trace function works for any function. The problem for a function
> which is internal for some module is not connected to `trace' but
> rather to how to access the procedure. You can for example do it with
> local-ref. To trace `foo' in (my module):
> (trace (local-ref '(app modules my module foo)))
Thanks for the information, this is exactly what I was looking for.
> > It was only after a long time that I found Chris Hanson's debugger
> > (debug), which is very useful to inspect the stack when receiving an
> > error. So bad there is absolutely no mention about it in guile-ref (I
> > know there is such a mention in the NEWS file, but who remembers what
> > was in the NEWS file six months after the installation of a new version
> > ?). I may provide a patch to appendices.texi with one line about that
> > debugger and the answers to the above questions.
> The debugger is not mentioned because it is not yet complete (and
> because when it was added, it was fairly untested: I wanted it to be
> used first in a smaller circle of people before announcing it).
To you mean Chris Hanson's interactive debugger (debugger.scm), or
yours (debug.scm) ? I have been using both of them without any problem
so far. The trace function is very useful, not only for debugging, but
also to check that a function is tail-recursive.