let rec pp_closures fmt xs cs =
    match xs , cs with
      | [] , [] -> ()
      | x::xs , c::cs ->
          Format.fprintf fmt "{%s:%a=%a}"
            (F.name_of_var x)
            Datalib.Tau.pp_tau (F.tau_of_var x)
            M.pp_closure c ;
          pp_closures fmt xs cs
      | x::xs , [] ->
          Format.fprintf fmt "{%s:%a=?}"
            (F.name_of_var x)
            Datalib.Tau.pp_tau (F.tau_of_var x) ;
          pp_closures fmt xs []
      | [] , c::cs ->
          Format.fprintf fmt "{?=%a}"
            M.pp_closure c ;
          pp_closures fmt [] cs