There is a new Ocaml book (Practical Ocaml, published by Apress) that
will hit the shelves on Monday, Oct 23.
http://www.apress.com/book/bookDisplay.html?bID=10146
There is a sample chapter online, and the source code to the book is
there (well, it might not be there just yet, but it will be real soon),
too. I'm the author, so I certainly hope people find the book useful.
The book was tech edited by Richard Jones (who is very active on
several Ocaml lists and groups).
The TOC reads like this:
CHAPTER 1 Why Objective Caml (OCaml)?
CHAPTER 2 Interacting with OCaml: The Toplevel
CHAPTER 3 Syntax and Semantics
CHAPTER 4 Understanding Functions
CHAPTER 5 Practical: Creating a Simple Database
CHAPTER 6 Primitive and Composite Types
CHAPTER 7 Practical: Simple Database Reports, Exports, and Imports
CHAPTER 8 Collections
CHAPTER 9 Files and File I/O
CHAPTER 10 Exception Handling
CHAPTER 11 Practical: A URI Library
CHAPTER 12 Using Ocamldoc
CHAPTER 13 Modules and Functors
CHAPTER 14 Practical: A Spam Filter
CHAPTER 15 Practical: A Network-Aware Scoring Function
CHAPTER 16 Ocamllex and Ocamlyacc
CHAPTER 17 Practical: Complex Log File Parsing
CHAPTER 18 The Objective Part of Caml
CHAPTER 19 Digression: OCaml Is Not Pure
CHAPTER 20 Digression: Functional Programming
CHAPTER 21 Practical: Web Programming
CHAPTER 22 Practical: A Shoutcast Server
CHAPTER 23 Using Threads
CHAPTER 24 Practical: A Concurrent Web Crawler
CHAPTER 25 Interfacing with OCaml
CHAPTER 26 Practical: Time and Logging Libraries
CHAPTER 27 Processing Binary Files
CHAPTER 28 OCaml Development Tools
CHAPTER 29 Camlp4
CHAPTER 30 Conclusion