Mishaps are an everyday part of programming. Sometimes they are the result of giving a POP-11 procedure the wrong type of input; sometimes, as in the example below, they are caused by a character left out, a word mistyped, or a symbol put in the wrong place.
length [the cat] ) =>
;;; MISHAP - MSEP: MISSING SEPARATOR (eg semicolon)
;;; INVOLVING: length [
;;; DOING : compile
Occasionally a mishap message can be hard to understand, but generally they
are informative. The first line of the message gives the type of mishap: in
this case a missing separator, the (
character.
The next line gives the position of the mishap
(between length
and [
), and the third
line is a `calling sequence' that would give an experienced programmer more
information about where the mishap occurred.