support.
\placeintermezzo{}{
+ \defref{id function}
\startframedtext[width=8cm,background=box,frame=no]
\startalignment[center]
{\tfa The \hs{id} function}
A predicate type introduces a constraint on a type variable introduced
by a forall type (or type lambda). In the example above, the type
variable \lam{t} can only contain types that are an \emph{instance} of
- the \emph{type class} \lam{Show}. \refdef{type class}
+ the \emph{type class} \lam{Show}.
There are other sorts of predicate types, used for the type families
extension, which we will not discuss here.