
\chapter{New ML Types in the prettyp Library}

{\def\_{{\char'137}}		         % \tt style `_' character

\begin{center}
\begin{tabular}{|l|l|}
\hline
{\it ML type}                     & {\it Description}\\
\hline
{\small\tt nat}                   & Natural numbers \\
{\small\tt print\_tree}           & Parse-trees \\
{\small\tt address}               & Sub-tree addresses \\
{\small\tt metavar\_binding}      & Kinds of object which can be bound during
a match \\
{\small\tt print\_binding}        & Bindings of metavariables to objects \\
{\small\tt print\_test}           & Tests on the pretty-printing environment \\
{\small\tt loop\_limit}           & Limit on number of times a looping match
can loop \\
{\small\tt print\_patt\_tree}     & Patterns for matching trees \\
{\small\tt child\_metavar}        & Patterns for matching trees \\
{\small\tt print\_pattern}        & Pretty-printing language patterns \\
{\small\tt print\_loop\_link}     & `Loop-link' information for looping
patterns \\
{\small\tt print\_box}            & Boxes of text \\
{\small\tt print\_indent}         & Absolute and relative indentation values \\
{\small\tt unbuilt\_box}          & Boxes of text waiting to be told what
space is available \\
{\small\tt print\_special}        & Special pretty-printer metavariable
assignments \\
{\small\tt print\_int\_exp}       & Pretty-printer integer expressions \\
{\small\tt print\_box\_spec}      & Box specifications in pretty-printing
rules \\
{\small\tt print\_format}         & Formats in pretty-printing rules \\
{\small\tt print\_object}         & Objects in pretty-printing rules \\
{\small\tt print\_rule}           & Pretty-printing rules \\
{\small\tt print\_rule\_function} & Pretty-printing rules as functions \\
\hline
{\small\tt lex\_symb}             & Kinds of lexical object used in the parser
\\
\hline
{\small\tt type\_selection}       & Amount of type information to be included
in parse-trees \\
                                  & for terms \\
\hline
\end{tabular}
\end{center}

}
