A documentation of idiomatic F# code capturing several major F# constructs in different domains. Concepts captured include:
- Domain modelling with algebraic data types.
- Making illegal states unrepresentable.
- Partial application.
- Actor model of concurrency using the MailboxProcessor.
- Railway-oriented programming
- Unit testing with NUnit
- Combinators
- Active Patterns
-
The only prerequisite to run scripts in this repository is to have the .NET SDK installed
-
Once the .NET SDK is installed, you can then run a script in the F# interactive terminal (fsi) with the following command:
dotnet fsi <name-of-script>.fsx
-
Optionally, you can run a block of code by highlighting the code block and pressing
ALT + return
keys. -
You can also run a line of code by placing the cursor on the line of the code and pressing
ALT + /
keys.