functor (Syntax : Sig.Syntax) -> Sig.Printer(Syntax.Ast).S