ocaml reading through Elements of Functional Programming by Chris Reade, alternating Haskell with OCaml for solutions