RosettaCodeData/Task/Input-loop/OCaml/input-loop-2.ocaml

13 lines
236 B
Plaintext

let read_line_opt ic =
try Some (input_line ic)
with End_of_file -> None
let read_lines ic =
let rec loop acc =
match read_line_opt ic with
| Some line -> loop (line :: acc)
| None -> (List.rev acc)
in
loop []
;;