let rec zunion = function | [z] -> z | [] -> e_app "zempty" [] | z::zs -> e_app "zunion" [ z ; zunion zs ]