Common Lisp the Language, 2nd Edition

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.