The book title should better be "Introduction to F# programming" since it doesn't teach how to *think* in functional as the title might promise. The book uses examples to introduce concepts and keywords, which I'm not sure if it's good for novice since it doesn't elaborate the syntax used in each example. Most examples are math related and the reader may need to have some math background. In general, I think this book is good for students (esp math students?) but is less interesting for professional programmer. Also, the book itself is incomplete, there is no topics about active pattern (user-defined pattern). Finally, what save this book from having 2 stars from me is many of the examples are interesting for math lover :) but that's it.