let init_builtin_env variable = Array.fold_left (fun acu (o, (_,_,_,arity, ds)) -> (o, (arity, TVariable (variable ?name:(Some o) ()), ds ) ) :: acu) [] builtin_env