let save arg =
  let n = match arg with
    | None -> fresh_state_name ()
    | Some(n) -> n
  in
  let e = Symtab.State s.current in
  s.symtab <- Symtab.add n e s.symtab;
  n