sig type channel = Buffer.t type document = document val pretty : float -> int -> channel -> document -> unit val compact : channel -> document -> unit end