Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ


Choose your language

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

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

Leia em Português

This item in japanese


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


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.

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

Community comments

  • ubiquity

    by Ali Motaz,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    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

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