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