Common Lisp the Language, 2nd Edition

next up previous contents index
Next: Condition Types Up: Survey of Concepts Previous: Serious Conditions

29.3.13. Non-Serious Conditions

Some conditions are neither errors nor serious conditions. They are signaled to give other programs a chance to intervene, but if no action is taken, computation simply continues normally.

For example, an implementation might choose to signal a non-serious (and implementation-dependent) condition called end-of-line when output reaches the last character position on a line of character output. In such an implementation, the signaling of this condition might allow a convenient way for other programs to intervene, producing output that is truncated at the end of a line.

By convention, the function signal is used to signal conditions that are not serious. It would be possible to signal serious conditions using signal, and the debugger would not be entered if the condition went unhandled. However, by convention, handlers will generally tend to assume that serious conditions and errors were signaled by calling the error function (and will therefore force entry to the interactive condition handler) and that they should work to avoid this.