Inspired by EdgeCase's fantastic Ruby koans, the goal of the F# koans is to teach you F# through testing.
When you first run the koans, you'll be presented with a runtime error and a stack trace indicating where the error occured. Your goal is to make the error go away. As you fix each error, you should learn something about the F# language and functional programming in general.
Your journey towards F# enlightenment starts in the AboutAsserts.fs file. These koans will be very simple, so don't overthink them! As you progress through more koans, more and more F# syntax will be introduced which will allow you to solve more complicated problems and use more advanced techniques.
To launch in watch mode using docker run the following command;
$ ./docker.sh
The F# Koans needs .Net Core 3.1 to be built and run. Make sure that you have installed it before building the project. This is the long-term servicing release of .NET Core that many modern F# and .NET applications use.
Additionally, the project provides Visual Studio Code configuration for running. To be able to run F# projects in Visual Studio Code, the Ionide plugin should be also installed.
-
To build the Koans, run
dotnet build
command in the project root. -
To run the Koans, run
dotnet run -p FSharpKoans/FSharpKoans.fsproj
in the root directory ordotnet run
inFSharpKoans
project directory.
- Open the project directory in Visual Studio Code with Ionide-fharp plugin installed and press F5 to build and launch the Koans (require some time to build the project before launch).
You can also use dotnet-watch to have your changes reloaded automatically.
To do so, navigate into FSharpKoans
directory and run dotnet watch run
. Now, after you change the project code, it will be automatically reloaded and tests rerun.