let new_env ~context =
  let k =
    try succ (Imap.find context system.environments)
    with Not_found -> 1 in
  system.environments <- Imap.add context k system.environments ;
  let env = env_name context k in
  system.last <- Some (context,k,env) ; env