views:

270

answers:

3

I'm only a novice programmer (I do it for fun) and I'm coming from the world of Python/C++/other procedural languages, and procedural style of problem solving. I fell in love with OCaml's simplicity after being boggled by its functional style for about a week. Since I'm not an engineer or mathematician, what are some helpful books or resources that will help transform my though process to think more functionally? Just standard exercises or are there books that will help me to think in those terms?

+4  A: 

I'm a big fan of "The Little MLer" the ML version of "The Little Schemer" (nee "The Little Lisper") The entire book is in question answer format, leading you through the language.

The big disadvantage is that it doesn't really cover (IIRC) the 'O' part of OCaML... but it covers the ML part really well...

Brian Postow
+5  A: 

'Introduction to Objective Caml' by Jason Hickey provides a good introduction to OCaml, and is available online: http://files.metaprl.org/doc/ocaml-book.pdf

danieldk
+1  A: 

It's not specific to OCaml, but if you want to learn to think in a functional way, a great place to start is with John Hughes's paper Why Functional Programming Matters.

Norman Ramsey