Puzzles solved by OCAML