Oxford comma
let rec oxford (l : string list) : string =
match l with
| [] -> ""
| x :: [] -> x
| x :: y :: [] -> x ^ ", and " ^ y
| x :: tl -> x ^ ", " ^ oxford tl
let () =
print_endline @@ oxford [];
print_endline @@ oxford ["a"];
print_endline @@ oxford ["a"; "b"];
print_endline @@ oxford ["a"; "b"; "c"]
INFO