let of_string = let ht = Hashtbl.create 107 in fun s -> try Hashtbl.find ht s with Not_found -> Hashtbl.add ht s s; s