Have you ever been in a hurry and pounded in a nail using something other than a
hammer? Or perhaps settled an argument concerning distances with “the length of my
arm is about 20 inches, and that’s about two arm lengths...”? You might not be willing
to fall for such obviously flawed shortcuts, but as your humble author, I will admit that
I have.
There is elegance to using the right tool for the job. And, just like a hammer or a tape
measure, programming languages are tools like any other. Throughout this book, you
will discover that although F# isn’t the best tool for every situation, it is the perfect tool
for some situations.
This book is about showing you how to use the F# programming language as a general
purpose tool, with an emphasis on the specific domains where it can lead to dramatic
boosts in productivity.
Along the way, you will pick up a knack for functional programming, a semi-mysterious
collection of concepts that can help you rethink your programs regardless of the host
programming language.
Why learn F#? With this guide, you’ll learn how this multi-paradigm language not only offers you an enormous productivity boost through functional programming, but also lets you develop applications using your existing object-oriented and imperative programming skills. You’ll quickly discover the many advantages of the language, including access to all the great tools and libraries of the .NET platform.
Reap the benefits of functional programming for your next project, whether you’re writing concurrent code, or building data- or math-intensive applications. With this comprehensive book, former F# team member Chris Smith gives you a head start on the fundamentals and walks you through advanced concepts of the F# language.
-
Learn F#’s unique characteristics for building applications
-
Gain a solid understanding of F#’s core syntax, including object-oriented and imperative styles
-
Make your object-oriented code better by applying functional programming patterns
-
Use advanced functional techniques, such as tail-recursion and computation expressions
-
Take advantage of multi-core processors with asynchronous workflows and parallel programming
-
Use new type providers for interacting with web services and information-rich environments
-
Learn how well F# works as a scripting language