For the last two years, interest in F# and functional-first programming has been growing steadily. More than 10 books about F# are now on the market, more than one new user group has appeared somewhere in the world every month during the last year, and the number of members of and visitors to the F# Software Foundation has been increasing at a steady rate.
Many people become interested in F# because they hear about the benefits that functional-first programming gives you: the F# type system mostly removes the need for null checking and other invalid states; avoiding a mutable state and its declarative nature makes it easier to understand your programs; and the agent-based programming model simplifies concurrency. These are all nice facts about F#, but how do you put them into practice?
We provide the answer with this book. Rather than introducing F# language features using simple, toy examples, we worked with F# experts who have hands-on F# experience. We asked each of them to write a chapter based on a real scenario that they solved with F#. Each chapter is a case study documenting not just the source code written, but also the author’s approach to solving the problem, how it integrates with the broader ecosystem, and the business benefits gained from using F#.