Option 1: Install the CLI tools and use your own editor

logo Install the .NET Core SDK.

You can also use this one-liner from the command-line if you prefer not to use the installer package:

curl -sSL https://dot.net/v1/dotnet-install.sh | bash /dev/stdin --channel Current

Once that is installed, you can begin using F#!

Create a file called hello.fsx that looks like this:

printfn "Hello World from F#"

Now compile and run this F# script with the following command:

dotnet fsi hello.fsx

If this is your first time using .NET Core, there will be a short, one-time message about using the .NET SDK. After that, you’ll see the following output in your console:

Hello World from F#

To create a project use

dotnet new console --language F#
dotnet run

You will see a message saying “Hello World from F#”.

For more information see Getting started with the F# command line tools.


Option 2: Install Visual Studio Code and Ionide

logo Visual Studio Code is a free, open source, cross platform source code editor supporting a lot of languages. F# is supported by the Ionide project.

  1. Install .NET Core SDK like in step 1.

  2. Install Visual Studio Code for macOS.

  3. Press Cmd+Shift+P and enter the following to install the Ionide package for VS Code.

     ext install Ionide-fsharp
    

You can also install the plugin from the plugin pane on the left-hand side.

Ionide works best if you use the .NET CLI to create your projects. You can learn more in Get Started with F# in Visual Studio Code.


Option 3: Install Visual Studio for Mac

Visual Studio for Mac is a free IDE for general purpose development. It supports a wide range of projects that you can use F# with.

You can learn more at Get started with F# in Visual Studio for Mac.


Option 4: Install JetBrains Rider

logo JetBrains Rider is a cross-platform .NET IDE built using IntelliJ and ReSharper technology. It offers support for .NET and .NET Core applications on all platforms.

You can install JetBrains Rider from here.


Option 5: Build F# from source

You can build and contribute to the F# compiler and library from the source.