A call to ppstring ppf x will call the pretty-printing function
ppf on value x, with the pretty-printing output stored in the
string that is eventually returned to the user. The linewidth used for
determining when to wrap with newline characters is given by the
reference Globals.linewidth (typically 72).
FAILURE
Fails if the pretty-printing function fails on the particular input
value.
EXAMPLE
> ppstring PP.add_string "hello"
val it = "hello": string
COMMENTS
The returned string may contain unwanted terminal-specific escape codes,
see rawterm_pp.