It's Official: Visual Studio 2010 Will Ship with F#

| by Jonathan Allen Follow 576 Followers on Dec 11, 2008. Estimated reading time: 2 minutes |

Back in 2007 it was revealed that F# would become a first class language on the .NET platform at some point in the future. Last night it was announced that F# will be included in the Visual Studio 2010 release.

F#, the first primarily functional language supported by Microsoft, is based on OCaml. OCaml as was chosen a basis in part because it supports a mix of functional, imperative, and object-oriented programming styles. While functional programming is what draws people to languages like F# and OCaml, the other aspects are crucial for leveraging the rest of the .NET framework.

F# is not considered to be a .NET 4.0 feature at this time. Rather, it will be shipped with separate redistributables much in the same way J# was. This allows Microsoft to continue to support F# on the Mono and CLR 2.0 platforms.

In the same spirit as other new Microsoft languages, the F# compiler and tools will open source under the Microsoft Public License. This license is the least restrictive of all Microsoft licenses and essentially says you can do whatever you want as long as you keep the copyright notices and do not sue the authors.

Within Visual Studio, F# is not meant to be used alone. While Microsoft is encouraging developers to build the core of their applications using F#, for the presentation layer they are recommending VB and C# be used. Don Syme continues,

Our focus on delivering high-quality F# core tools is designed to augment Visual Studio’s amazing strengths as a presentation-rich object-oriented programming environment. As a result, we have made an explicit decision to leverage the strengths of C# and Visual Basic as presentational and designer-rich programming languages in this release. This means that F# users should use the Visual Studio designer tools to generate C# or Visual Basic code and incorporate those components into their F# applications.

While F# has gone beyond its OCaml roots, it is not discarding them entirely. Using the F# Power Pack components, developers will still be able to write F# code that can be compiled with OCaml. This will require using a restricted subset of the language, though hopefully there will be tools to help developers know when they cross the line into F#-only code.

Dom Syme concludes with

F# is a joint advanced development project between Microsoft Research, Cambridge and the Microsoft Developer Division. I am very glad to be staying involved as the language architect and will remain at Microsoft Research. Our awesome team includes people in Cambridge, Redmond, Vancouver and China, and some team members operate from Germany and New York. I am continually amazed at the people I get to work with on this project and the skills they bring, and we hope to make it a prime example of innovative development at Microsoft.

Rate this Article

Adoption Stage

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Tell us what you think

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

ubiquity by Ali Motaz

I am pretty much invested in MS BI stack. Will I be able to use F# inside SSRS expression and SSIS scripts?

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

1 Discuss

Login to InfoQ to interact with what matters most to you.

Recover your password...


Follow your favorite topics and editors

Quick overview of most important highlights in the industry and on the site.


More signal, less noise

Build your own feed by choosing topics you want to read about and editors you want to hear from.


Stay up-to-date

Set up your notifications and don't miss out on content that matters to you