Either a typographical error, or use of a variable outside of the part of the program in
which it is available (e.g. using a variable created by let outside the body of the
let, or use of a variable created by define within a procedure outside of
that procedure).
Applying something that isn't a procedure
"The object ... is not applicable" The value of the first subexpression in a
combination must be a procedure.
Wrong number of arguments to a procedure
The number of arguments in a call to a procedure must match the number of parameters
the procedure expects.