Skip to content

A couple of F# scripts showcasing domain-modelling capabilities with F# in different domains as well as other functional programming concepts

Notifications You must be signed in to change notification settings

RexKizzy22/state-machine

Repository files navigation

State Machine

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

How to Run Scripts

  1. The only prerequisite to run scripts in this repository is to have the .NET SDK installed

  2. 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
  3. Optionally, you can run a block of code by highlighting the code block and pressing ALT + return keys.

  4. You can also run a line of code by placing the cursor on the line of the code and pressing ALT + / keys.

About

A couple of F# scripts showcasing domain-modelling capabilities with F# in different domains as well as other functional programming concepts

Topics

Resources

Stars

Watchers

Forks

Languages