Identifier Errors

In the terminology of SML an identifier is bound to some definition. If you haven't defined the identifier in an expression you will get a complaint about an unbound variable. If the identifier is in a binding pattern then you might have intended it to be a constructor from a datatype. Here are some examples.

fun f cmd =
(
    case cmd of
      [] => ""
    | (first::rest) => TxtIO.print frst
)
ubnd1.sml:5.24-5.35 Error: unbound structure: TxtIO in path TxtIO.print
ubnd1.sml:5.24-5.28 Error: unbound variable or constructor: frst