keyboard_arrow_up

Microsoft’s Insight Into The Upcoming F# 4.1 Version

Microsoft’s Insight Into The Upcoming F# 4.1 Version



By the later part of this year, Microsoft gonna ship a new version of Microsoft’s tools for F#, which will include support for F# 4.1, featuring important improvements to the language that have been developed in addition with F# users and contributors.

Their tools will also include a cross-platform, open-source F# 4.1 compiler tool-chain for .NET Framework and .NET Core, suitable for use on Linux, Windows, and macOS/OS X.

The Visual F# Tools for F# 4.1 will be updated to include support for editing and compiling .NET Core and .NET Framework projects. The F# Tools will also include incremental fixes and integration with the new Visual Studio installation process.
In this blog post, we explore support for F# in some detail.

Support for the .NET Standard and .NET Core

The compiler and scripting tools for F# 4.1 would be the first version to offer support for .NET Core. This is in addition to the current support for .NET Framework 4.x development. When you write F# code on .NET Core now, you’re using a pre-release of F# 4.1 and a compiler tool chain.

Microsoft tools for F# will continue to be fully compatible .NET Framework development in a backwards-support way. This includes compiling existing projects designed with previous versions of Visual Studio and running existing scripts using F# Interactive (fsi.exe). Support for the recent versions of the .NET Framework is being added to these tools.

The Microsoft compiler tools for F# 4.1 are totally compatible with the .NET Standard, and thus are fully feasible with .NET Core and .NET Framework. The FSharp.Core library aid the .NET Standard, which allows you to use it for both .NET Core and .NET Framework development.
Presently, the only support is in alpha.

Start with F# 4.1 on .NET Core

Currently .NET Core 1.0 SDK tooling is still in preview. So details here are likely to change as that tooling finalize.
To being on .NET Core, install the .NET Core 1.0 SDK Preview 2 tooling.

Then create a directory somewhere on your PC, open a command line, and type:
dotnet new -l f#

Three files will be dropped in your directory: a project.json file, an F# source file, and a NuGet.Config file.

1. Delete the NuGet.Config file.

2. Change the project.json file to the following:

{
“version”: “1.0.0-*”,
“buildOptions”: {
“emitEntryPoint”: true,
“compilerName”: “fsc”,
“compile”: {
“includeFiles”: [
"Program.fs"
]
}
},
“tools”: {
“dotnet-compile-fsc”:”1.0.0-preview2-*”
},
“frameworks”: {
“netcoreapp1.0″: {
“dependencies”: {
“Microsoft.NETCore.App”: {
“type”: “platform”,
“version”: “1.0.0”
},
“Microsoft.FSharp.Core.netcore”: “1.0.0-alpha-160629″,
}
}
}

}

You can now restore packages, build the project, and run it to see output with the following commands:

$ dot net restore
$ dot net build
$ dot net run

Try these new features

The best way to try out F# 4.1 is to use previous releases of the F# compiler tools for .NET Core.

Rolling out F# 4.1

Microsoft is taking utmost care to ensure that F# 4.1 support is rolled out across the very wide range of tooling available for F# 4.1.

In particular:

The Xamarin team of Microsoft are actively incorporating F# 4.1 support into the F# support in Xamarin Studio.

The Mono packaging team is updating the packages available to include F# 4.1.

The F# community is amalgamating F# 4.1 support in the F# Compiler Service component, used by many editing and compilation tools.

They are working with the F# community to help update the F# support in the Visual F# Power Tools .

The F# community is already actively incorporating support for F# 4.1 into support for Visual Studio Code and Atom through the Inside project.
The F# community is incorporating support for F# 4.1 into many other tools, including Fable, a F# to ECMAScript transpiler, and into the F# support for Vim and Emacs.

The Visual F# Tools

The Visual F# Tools for F# 4.1 gonna be updated to include aid for editing and compiling .NET Standard projects, in addition to .NET Framework projects. .NET Standard is the common subset of APIs between .NET Framework,NET Core and Mono.
The final area for F# 4.1 is incorporating the F# language with Roslyn Workspaces. This will modernize the F# IDE experience in Visual Studio, making it comparable to C# and Visual Basic and making a way for future IDE innovation. Once this work is completed, many IDE features will “light up” automatically, such as IntelliSense filters.

Summary

Microsoft’s tools for F# features significant improvement in language and cross-platform .NET Core support. Support for F# 4.1 is also being rolled out across the F# world. We suggest you to use preliminary versions of these language and tooling features currently through alpha versions of different platform compiler toolchain for .NET Core. Whether doing .NET Framework or .NET Core development, contribute to the designing of the tools on the Visual F# GitHub repository.

If you wanna learn ASP.Net and perfect yourself in .NET training, then CRB Tech Solutions would be very helpful in fulfilling your aspirations. We update ourself with the ongoing development in ASP.Net course.

Stay connected to the page of CRB Tech reviews for more technical up-gradation and other resources.