functor (P : Miniml.Mlpp_param-> Miniml.Mlpp