Lessons
F# · Expert
F# · Expert. Ten lessons. Open-book quizzes. Lesson 1 free.
10 lessons · The Host · Lesson 1 free
Pass all ten lessons for the certificate. Sample · Claim

Lesson 1 · On the house
MailboxProcessor agents
Actor-style state with MailboxProcessor, Post, PostAndReply, and message DUs.

Lesson 2
Full computation expression builders
Delay, Zero, Combine, For, and Yield to support loops and sequencing in your own CE.

Lesson 3
Statically resolved type parameters
Member constraints with inline and ^T to call members on any type that has them.

Lesson 4
Quotations
Capture code as data with <@ @>, inspect it with patterns, and evaluate simple trees.

Lesson 5
FSharp.Reflection
Inspect union cases and record fields at runtime to build generic printers and serializers.

Lesson 6
Parser combinators from scratch
Build small parsers as functions and combine them with map, bind, and choice.

Lesson 7
Continuation-passing style
Make non-tail recursion stack-safe by passing the rest of the work as a function.

Lesson 8
Structs and performance
[<Struct>] records and unions, ValueOption, inline, and avoiding allocations.

Lesson 9
Events and observables
Event<_>, Publish, Trigger, and composing streams with the Observable module.

Lesson 10
.NET interop and nulls
Handle nulls at the boundary, use .NET collections, out parameters, and attributes.
Sample certificate
Certificate of completion
Sign in to claim your certificate of completion.
Certificate
Finish all ten lessons, then sign in
Pass every lesson on this device (quizzes and checks). Then sign in or create an account to type your name and download the JPG.