let rec ask msg = Printf.printf "%s [yes/no/abort] " msg; match read_line () with | "y" | "yes" -> `yes | "n" | "no" -> `no | "a" | "abort" -> `abort | _ -> ask msg