Unit 2. Hello F#

 

In the previous unit, you gained a feeling for the development experience in VS. It’s not that different from C# and VB .NET insofar as you have the same basic project types, as well as access to the Base Class Library (BCL) that you already know. But we covered only the bare essentials of the F# language.

This unit focuses on the core foundational elements of F# as a language: how it differs from C# and VB .NET in its aims, how it changes your approach to problem solving in the “small,” and how you learn to work with a compiler and language that make you think in a slightly different way. As you’ll see, you’ll already be familiar with some of the concepts in C# and VB .NET; but F# takes those features and turns the dial up to 11 on them—putting them front and center of the language.

By the end of this unit, you’ll have a good understanding of the basic syntax structure and philosophy of F#. You’ll gain experience working with its rich type inference as well as with expressions and statements. In addition, you’ll understand the benefits of immutable data.

Note

Pay attention in this unit! At the end of it, you’ll work through a capstone exercise—a larger lesson that’s designed to get you using all the elements you’ll have learned thus far in a single, coherent application. Think of it as the end-of-level boss, and these lessons as the power-ups you need to gain in order to beat it.