let empty_gen = List.fold_left (fun acc (opt_name,opt_fun, _, _) -> Datatype.String.Map.add opt_name (opt_fun ()) acc) Datatype.String.Map.empty generating_opts