A comprehensive and in-depth guide to writing functional programs using F#
About This Book
• Learn how to manage, run, and automate your servers using Puppet
• Explore how to use F# to develop large-scale applications quickly and simply, and become more productive in today's age of cloud computing and multi-core programming
• This easy-to-follow guide is packed with real-world examples that will jump-start you with F# development on the .NET platform
Who This Book Is For
If you are a C# developer with a basic knowledge of F# and want to explore the functional programming paradigm further to master your F# skills, then this book is for you.
What You Will Learn
• Understand the basics of F# and organize F# source code with Visual Studio
• Work with F# data structures and create functional data structures in F# interoperate with C#
• Build and use asynchronous programming patterns with F#
• Create and use type providers that help perform data analysis from within Visual Studio
• Develop applications with pure F# code in WPF or ASP.NET MVC
• Find out how to perform distributed programming with ServiceBus or ZeroMQ
• Visualize data with charts, and work with Excel and R language Type providers
F# is a multi-paradigm programming language that encompasses object-oriented, imperative, and functional programming language properties. Now adopted in a wide range of application areas and is supported both by industry-leading companies who provide professional tools and by an active open community, F# is rapidly gaining popularity as it emerges in digital music advertising, creating music-focused ads for Spotify, Pandora, Shazam, and anywhere on the web.
This book will guide you through the basics and will then help you master F#. The book starts by explaining how to use F# with Visual Studio, file ordering, and the differences between F# and C# in terms of usage. It moves on to explain the functional core of F# such as data types, type declarations, immutability, strong type interference, pattern matching, records, F# data structures, sequence expressions, and lazy evaluation. Next, the book takes you through imperative and asynchronous programming, F# type providers, applications, and testing in F#. Finally, we look into using F# with distributed programming and using F# as a suitable language for data science. In short, this book will help you learn F# for real-world applications and increase your productivity with functional programming.
Style and approach
This easy-to-follow guide with syntaxes will help you master the concepts of F#. Packed with in-depth examples of real-world uses, this book covers each topic in detail with a reference to C#, so you will understand the difference between the languages.