let iteri l ~f =     ignore (fold l ~init:0 ~f:(fun i x -> f i x; i + 1))