functor (Id : Sig.Id) -> functor (Maker : functor (Syn : Sig.Camlp4Syntax) -> Sig.Printer(Syn.Ast).S) -> sig end