functor (S : Surface) (L : Lookup) -> sig val expand : 'a Kwmacro.func -> 'a L.table -> 'a -> string -> string end