Microsoft’s F#
programming language has seen a significant boost in popularity, most likely
spurred by its inclusion in the company’s flagship Visual Studio tools suite.
August marked
the first time F# cracked the top 20 of the TIOBE
Index, which ranks the popularity of programming languages based on the
number of developers who claim to use them. F# came in as the 19th
most popular programming language according to the August 2011 TIOBE Index.
F# is a
functional language that came out of Microsoft Research (MSR). The
language came on the scene in 2007, though Microsoft researcher Don Syme had
launched the project many years earlier. Microsoft describes F# as a succinct,
expressive and efficient functional and object-oriented language for .NET that
helps developers write simple code to solve complex problems.
As described
on its
Microsoft Research page, F# is: “A simple and
pragmatic language, and has particular strengths in data-oriented programming,
parallel I/O programming, parallel CPU programming, scripting and algorithmic
development. It lets you access a huge .NET library and tools base and comes
with a strong set of Visual Studio development tools. F# combines the
advantages of typed functional programming with a high-quality, well-supported
modern runtime system.”
In a blurb on F#, TIOBE said: “Finally, a new functional programming language has hit the top 20. Most people thought that hot functional languages such as
Scala (#66), Clojure (#107), Haskell (#35) or Erlang (#48) would be the ones
that would be the first to compete seriously with the mother of all functional
languages, Lisp. But it appears to be Microsoft language F#. The recent rise in
popularity of F# comes as no surprise. Apart from being a nicely designed
language, F# is available in the latest version of Microsoft's Visual Studio
(2010)."
S. Somasegar,
senior vice president of Microsoft’s Developer Division, has blogged about F#
on various occasions. In this
post, Somasegar notes that Visual Studio 2010 marks the first release to
directly support functional programming through the F# programming language. Somasegar said:
F# is a
highly productive .NET programming language combining functional programming
and object-oriented programming, and is ideally suited for parallel,
algorithmic, technical and explorative development. F# is the result of a
close partnership between Microsoft Research and the Visual Studio team, and
since announcing F# in Visual Studio 2010 we’ve seen a surge of interest and
uptake in the language. We’ve also worked closely with the F# community and
major adopters to ensure it meets the needs of professional software developers
working in these domains.
Meanwhile, in
an older post, Somasegar said, “In my mind, F# is another first-class
programming language on the CLR [Microsoft’s Common Language Runtime].”
He also said:
Our interest
in F# is motivated by several factors. We aim to continue the flow of good
ideas from the functional programming world into mainstream development.
Furthermore, the somewhat mathematical slant of functional programming just
seems naturally appealing to professionals whose primary domain is described
with mathematical notation—domains such as financial, scientific and technical
computing.