Next: 2.3 Packages
Up: 2 Design Choices and
Previous: 2.1.5 Array Initialization
CMU Common Lisp has several interrupt handlers defined when it starts up,
as follows:
- SIGINT (c)
- causes Lisp to enter a break loop.
This puts you into the debugger which allows you to look at the
current state of the computation. If you proceed from the break
loop, the computation will proceed from where it was interrupted.
- SIGQUIT (L)
- causes Lisp to do a throw to the
top-level. This causes the current computation to be aborted, and
control returned to the top-level read-eval-print loop.
- SIGTSTP (z)
- causes Lisp to suspend execution and
return to the Unix shell. If control is returned to Lisp, the
computation will proceed from where it was interrupted.
- SIGILL, SIGBUS, SIGSEGV, and SIGFPE
-
cause Lisp to signal an error.
For keyboard interrupt signals, the standard interrupt character is in
parentheses. Your `.login' may set up different interrupt
characters. When a signal is generated, there may be some delay before
it is processed since Lisp cannot be interrupted safely in an arbitrary
place. The computation will continue until a safe point is reached and
then the interrupt will be processed. See section 6.9.1 to define
your own signal handlers.
Raymond Toy
Mon Jul 14 09:11:27 EDT 1997