sig type 'a t = (Var.t * 'a) list exception Failure of string val add : string -> 'a -> 'a Env.t -> 'a Env.t val find : string -> 'a Env.t -> 'a end