functor (M : Stringable.S->
  sig
    val t_of_sexp : Sexplib.Sexp.t -> M.t
    val sexp_of_t : M.t -> Sexplib.Sexp.t
  end