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)

GitHub Electron


Electron is a project developed by GitHub, originally created for its enhanced text editor, Atom, and later rebranded and open sourced in a tool of its own so it can be used by other projects as well. Electron allows developers to build cross-platform desktop apps using web technologies such as JavaScript, HTML, and CSS.

It manages to do that by packing the following three main components:

  • Node: This is a runtime designed to build servers in JavaScript with an event-driven, non-blocking I/O model. However, its extensive API has made it very popular among web programmers to create development tools, and Node's npm has become the largest ecosystem of open source libraries in the world.

    Note

    You will also need Node for the development of Electron apps, so if you don't have it installed in your system, you can download it from https://nodejs.org.

  • Chromium: This is an open source web browser from which Google Chrome draws its source. It shares many features with the popular Chrome...