F# Guide

F# is a cross-platform, open source programming language for .NET which provides first-class support for functional programming, along with support of object-oriented and imperative programming. The Visual F# compiler and tooling are Microsoft's implementation and tooling for the F# programming language, making F# a first-class member of .NET.

If You're New to Programming

If you're new to programming, start with the Tutorials section. The tutorials have a beginner's section which show you how to write and run your own F# programs.

Alternatively, if you prefer to get a thematic overview of F# and some of its distinguishing features, check out the Tour of F#.

If You're New to F#

If you know how to program, but you're new to F#, begin with the Tour of F# to get an overview of the language.

It's also recommended that you go through the Introduction to Functional Progamming to learn Functional Programming concepts which are essential to working with F#.

The Tutorials also have step-by-step guides for various skill levels and features of the language.

If You're Experienced with F#

If you know your way around F#, you'll find a lot of use in the Language Reference, which documents each aspect of the language thoroughly, supplemented by numerous code samples. You'll also find a lot of use in the F# Core Library Reference.

The F# Software Foundation

Although Microsoft is the primary developer of the F# language and Visual F# Tooling, F# is also backed by an independent foundation, the F# Software Foundation (FSSF).

The mission of the F# Software Foundation is to promote, protect, and advance the F# programming language, and to support and facilitate the growth of a diverse and international community of F# programmers.

To learn more and get involved, check out fsharp.org.

Documentation

Online Reading Resources

Video Learning Resources

Further Resources