Common Lisp the Language, 2nd Edition
Next: Printing Conditions
Up: Survey of Concepts
Previous: Resignaling
Conditions
A handler is a function of one argument, the condition to be
handled. The handler may inspect the object to be sure it is
``interested’’ in handling the condition.
A handler is executed in the dynamic context of the signaler, except that the set of available condition handlers will have been rebound to the value that was active at the time the condition handler was made active. The intent of this is to prevent infinite recursion because of errors in a condition handler.
After inspecting the condition, the handler should take one of the following actions:
go
, return
, or throw
, or more
abstractly using a function such as abort
or
invoke-restart
.In fact, the latter two actions (signaling another condition or
entering the debugger) are really just ways of putting off the decision
to either handle or decline, or trying to get someone else to make such
a decision. Ultimately, all a handler can do is to handle or decline to
handle.
Next: Printing Conditions
Up: Survey of Concepts
Previous: Resignaling
Conditions
AI.Repository@cs.cmu.edu