Book Image

Mastering F#

By : Alfonso García-Caro Núñez, Suhaib Fahad
Book Image

Mastering F#

By: Alfonso García-Caro Núñez, Suhaib Fahad

Overview of this book

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.
Table of Contents (16 chapters)

WebSharper


WebSharper is a full web framework that allows you to use F# not only on the server but on the client side too. WebSharper also includes many extensions to interact with other libraries or environments, such as mobile phones, and takes full advantage of F# composability and reusability capabilities. However, one of the main features of WebSharper is that it takes F# type safety to the next level to catch many errors at compile time, including safe URLs.

Installing WebSharper

The easiest way to install WebSharper is to use the extensions available for Visual Studio and Xamarin Studio. You can download them from its website and follow the instructions to create a new WebSharper project at http://websharper.com/downloads.

WebSharper includes a set of opinionated tools, allowing users to quickly develop websites without worrying about boilerplate. Here, we will briefly overview some of these tools.

Sitelets

WebSharper Sitelets provides you with an easy way to create type-safe websites...