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