F# Deep Dives is a collection of case studies that demonstrate how to use functional-first programming in practice. Each chapter is written by an F# expert and is based on their use of F# in industry. You can get the book from Manning.com, from Amazon.com or Amazon.co.uk or your favorite book store.
Thanks to everyone who wrote a review or posted a comment about theF# Deep Dives book. Thanks to the Manning Early Access program, the book was available to the readers even before it was completed, which gave us some very valuable feedback.
First of all, I want to mention that it is not a usual book about F# or another programming language. If you are novice to F# and looking for a guide of language constructs – this book is not the best choice for you. BUT, if you are already familiar with F# basic syntax constructs, can read simple F# code samples and want to see the language in action – this book is for you.
(...) Finally, I want to say that the book is really good. Everyone will find interesting topics and a new experience. You will get a broader vision of F# application in a real life. You will see how a functional approach can change and simplify the architecture of real life apps. If you are looking for what to read next – take a look at “F# Deep Dives“, this book is really deserves it
As many readers of my writing will already know, I've been kind of "involved" with F# (and its cousin on the JVM, Scala) for a few years now, to the degree that I and a couple of really smart guys wrote a book on the subject. Now, assuming you're one of the .NET developers who've heard of F# and functional programming, and took a gander at the syntax, and maybe even bought a book on it (my publisher and I both thank you if you bought ours), but weren't quite sure what to do with it, a book has come along to help get you past that.
As of this writing, the early-access (...) version had only Chapters 3 (...) and Chapter 11 (...), but the other topics (...) are juicy and meaty, and both Tomas and Philip are recognized names in the F# space. (...) In particular, the Markdown parser they implement in chapter 3 is a great example of a non-trivial language parser, which is not an easy task to approach but certainly a lot easier to do in a functional language. (...)
Finally! A book that shows a wide variety of applications for F#.
Beautifully written by F# experts — take a deep dive without holding your breath.
Outstanding real-world examples that are sure to appeal to both the novice and expert.
I love the Deep Dives concept. This book is full of insights about how to apply the power of F# to real-world problems.
A must have book for every F# programmer.
Got F# Deep Dives book. Can't wait to read it as it's exactly the type of #fsharp book that we need!
Currently, two of the book chapters are available as free samples from Manning. You can also get the full source code and additional information from the front matter of the book. We are working on releasing additional excerpts from some of the chapters, which will appear here when published!
The following two chapters are available as free samples:
We tried to minimize the number of errors in the book as hard as I could. However, some errors are (unfortunately!) inevitable. This page contains the list of known issues. If you spot an issue that isn’t listed on this page, please send an email to Tomas at tomas@tomasp.net.
[0..x] |> Seq.sumBy (fun k -> f(!n) / (f(!k) * f(!(n-k))) * p**(f(k) * (1. - p)**f(n-k)))This should be the same as the code that appears later on page 29 (i.e. additional parentheses are needed around
**
to
specify the correct priority; also we first multiply the two factorials and then covert the result to float):
[0..x] |> Seq.sumBy (fun k -> f(!n) / (f(!k * !(n-k))) * (p**(f(k))) * ((1. - p)**f(n-k)))
val answer1 : int = 42
, but
the correct output should be val answer2 : int = 42
.