It seems unfriendly to the mathematical user (as opposed to the
programmer) to make control-G break to Lisp. Also not very friendly to
do this for so-called "fatal errors".
In PDP-10 Macsyma, if I remember correctly, you could enter a recursive
Macsyma command line using control-A (not that the specific character
matters).
This is useful in at least two situations:
1) You have a long-running Maxima program you've written, and you want
to check on its progress by looking at some variables.
2) Maxima has asked
Is <<some large mess>> positive, negative, or zero?
and you want to manipulate that expression to calculate
whether you indeed consider it positive, negative, or zero.
In Maxima, you can hit control-G and then (mbreak-loop), but that's not
exactly user-friendly. And then, I can't figure out how to resume my
running program. :r, :t, and :q all return to the top level of Maxima
rather than continuing the calculation.
By the way, what is the recommended way to debug gcl? Is there some
emacs-based mode which makes stack inspection etc. easier? I've been
basically avoiding all the :xxx functionality so far (I've just added
instrumentation to my code), but I think I need to bite the bullet.
-s