OCaml Programming: Correct + Efficient + Beautiful [a textbook]

OCaml Programming: Correct and Efficient and Beautiful