Module Memo.Tabulate

module Tabulate: sig .. end

module type Fun = sig .. end
module type RecFun = sig .. end
module type S = sig .. end
module Make: 
functor (F : Fun) -> S with type dom = F.dom and type cod = F.cod
module MakeRec: 
functor (F : RecFun) -> S with type dom = F.dom and type cod = F.cod