adamc@418: functor Make (M : sig
adamc@418: con fs :: {Unit}
adamc@418: val names : $(mapUT string fs)
adamc@418: end) = struct
adamc@418:
adamc@418: fun handler values = return
adamc@418: {foldURX2 [string] [string] [body]
adamc@418: (fn (nm :: Name) (rest :: {Unit}) [[nm] ~ rest] name value =>
adamc@418: {[name]} = {[value]}
adamc@418: )
adamc@418: [M.fs] M.names values}
adamc@418:
adamc@418:
adamc@418: fun main () = return
adamc@418:
adamc@418:
adamc@418:
adamc@418: end