sig
  val implementation :
    string ->
    SurfaceSyntax.implementation -> SurfaceSyntax.interface option -> unit
end