Show.MakeFunctor building an implementation of SHOW given a type with a pretty-printer.
module T : sig ... endtype t = T.tval pp : Format.formatter -> t -> unitpp ppf t emits t pretty-printed to ppf.
val show : t -> stringshow t pretty-prints t to a string.