The Visual F# compiler and tools
F# 1C Enterprise C# Visual Basic Perl Batchfile Other
Latest commit 7494d6d Jan 18, 2017 @brettfo brettfo committed with dsyme ignore generated test artifacts (#2285)
Failed to load latest commit information.
.nuget Use dotnet publish to deploy fsharp.core.unittests for coreclr (#1733) Nov 12, 2016
artifacts Build nupkg to artifacts directory (#1736) Nov 13, 2016
lkg Update lkg (#1947) Dec 6, 2016
scripts faster download of latest dotnet Jan 29, 2016
setup remove all vestiges of multiple skus (#2244) Jan 13, 2017
src do not inline CLIMutable record field getter in release (#2263) Jan 16, 2017
tests ignore generated test artifacts (#2285) Jan 18, 2017
vsintegration fix #2272 (#2273) Jan 16, 2017
.gitattributes printfn "Hello, world!";; Mar 28, 2014
.gitignore Minor Build Configuration Improvements (#1760) Nov 17, 2016
.travis.yml Enable macOS (OS X) testing for Travis CI builds. (#2109) Dec 27, 2016
BuildToolsVersion.txt Enable Build/CI with Mono (#1703) Nov 6, 2016 reset (c) Microsoft Open Technologies, Inc. back to (c) Microsoft Cor… Jan 29, 2016 Update Dec 8, 2015 Update `master` to VS2017 RC2 (#1996) Dec 13, 2016
DotnetCLIVersion.txt Update build tools to latest (#1651) Oct 25, 2016
FSharp.sln fix syntax errors and transitive errors in scripts (#1963) Dec 29, 2016 Update Apr 4, 2016
License.txt reset (c) Microsoft Open Technologies, Inc. back to (c) Microsoft Cor… Jan 29, 2016 fix build status links in README.MD: -> (#2017) Dec 15, 2016 Update (#1848) Nov 26, 2016
Upload-Results.ps1 Rename tests/Upload-Results.ps1 to Upload-Results.ps1 Nov 11, 2016
VisualFSharp.sln do not suggest open namespaces in case of misspelled names (#2137) Dec 31, 2016
appveyor.yml Add ci_part3 (#2003) Dec 13, 2016 Modify for OSX compatibility (#2125) Dec 30, 2016
build-everything.proj Add back the coreclr fsharp unit test cases (#1971) Dec 13, 2016
build.cmd Fix tools dir creation in microbuild Jan 5, 2017 Modify for OSX compatibility (#2125) Dec 30, 2016
init-tools.cmd make init-tools.cmd use default proxy (#1897) Nov 30, 2016 Enable Build/CI with Mono (#1703) Nov 6, 2016
netci.groovy Revert "Add OSX to OS list for Jenkins CI builds (#2134)" Dec 31, 2016
packages.config Update `master` to VS2017 RC2 (#1996) Dec 13, 2016

Join the chat at

Visual F# Tools

Windows build

Debug (Build only) Release (Tests Part 1) Release (Tests Part 2)
master Build Status Build Status Build Status

Contributing to the F# Language, Library, and Tools

You are invited to join with the F# Community and the Visual F# Tools team to help produce future releases of the F# language compiler, library, and tools.

F# is a mature, open source, cross-platform, functional-first programming language which empowers users and organizations to tackle complex computing problems with simple, maintainable, and robust code. F# is used in a wide range of application areas and is supported by Microsoft and other industry-leading companies providing professional tools, and by an active open community. You can find out more about F# at

Changes contributed here are packaged into the Visual F# Tools, the F# Open Edition, and other open source F# editing tools. Microsoft coordinates packaging this repository as part of the Visual F# Tools, while the F# community coordinates packaging it as the Open Edition of F# for use on Linux, OSX, Android, iOS, and other platforms, via the fsharp/fsharp GitHub repo.

Engineering status

F# for CoreCLR status

F# 4.0 status --- Completed, shipped.


This project is subject to the Apache Licence, Version 2.0. A copy of the license can be found in License.txt at the root of this repo.

Development and Testing

See and in the root of the repo for details on build, development, and testing.

Required Tools for Windows Development and Testing

Development tools

For F# Compiler on Windows (build net40)

For F# Compiler on OSX and Linux (see .travis.yml for build steps)

  • Mono latest
  • If building for .NET Core, then .NET Core will be downloaded from Linux packages

For Visual F# IDE Tools 4.1 development (Windows)

  • Visual Studio 2017 RC
    • Under the "Windows" workloads, select ".NET desktop development".
      • Select "F# language suport" under the optional components.
    • Under the "Other Toolsets" workloads, select "Visual Studio extension development".

Additional frameworks


Guidelines for contributions to the F# compiler, library, and Visual F# IDE tools can be found here.

How we label issues and PRs:

This project has adopted the code of conduct defined by the Contributor Covenant to clarify expected behavior in our community. This code of conduct has been adopted by many other projects. For more information see the Code of conduct.

If you would like to contribute to the F# ecosystem more generally see the F# Software Foundation's Community Projects pages.

Using CI Builds

To install F#, see

To download the bits for the latest CI builds see these instructions. This includes and ZIPs containing the F# compiler and VSIX installers for the Visual F# IDE Tools.

Code Flow to Other Platforms

This repository enables development on Windows, Linux and OSX. It enables automated CI testing primarily on Windows.

If using Android, or iOS, and would like to contribute, please see the instructions provided at the Open Edition repo.

Although the primary focus of this repo is F# for Windows and the Visual Studio F# tools, contributions here flow directly to the F# Open Edition repo. More details can be found here.

Get In Touch

Keep up with the Visual F# Team and the development of the Visual F# Tools by following us @VisualFSharp or subscribing to our team blog.