Error catching in Mockmma



Before releasing Mockmma (a Mathematica emulator), I would like to improve the error catching. Right now errors throw the user back into Maxima, but I would like them to be thrown back into Mockmma. This is what happens now:

In[1]:= 1/0;
Maxima encountered a Lisp error:
 Error in IF [or a callee]: Zero divisor.
Automatically continuing.
To reenable the Lisp debugger set *debugger-hook* to nil.

This is what I would like to happen:
In[1]:= 1/0;
Out[1]:= error message
In[2]:

This is what the main loop looks like in eval.lisp

(loop
#+gcl   (setq hin (multiple-value-bind
                       (iserr val)
                       (system:error-set '(mma::p))
                       (if iserr (clear-input t) val)))
)