sig
  type effectful_semantic = Constr.constr list -> Constr.constr
  val new_primitive :
    string -> string -> Interfaces.effectful_semantic -> unit
  val primitive_semantic : Names.constructor -> Interfaces.effectful_semantic
  val force_interface_initializers : unit -> unit
  val add_register_handler : (unit -> unit) -> unit
end