16.5 Condition Instances

A condition, in addition to the information associated with its
type, usually contains other information that is not shared with other
conditions of the same type. For example, the condition type associated
with “unbound variable” errors does not specify the name of the
variable that was unbound. The additional information is captured in a
condition object, also called a condition instance.

In addition to information that is specific to a given type of condition
(such as the variable name for “unbound variable” conditions), every
condition instance also contains a continuation that encapsulates the
state of the computation in which the condition occurred. This
continuation is used for analyzing the computation to learn more about
the context in which the condition occurred. It is not intended
to provide a mechanism for continuing the computation; that mechanism is
provided by restarts.