2007年、将来いつかF#が.NETプラットフォームで最上の言語になるだろう(参考記事・英語)ということが発表された。昨夜、F#がVisual Studio 2010のリリースに含まれることが発表された。
Microsoft支援による初の機能言語であるF#は、Camlに基づいている。OCamlは、機能的で、必須で、オブジェクト指向のプログラミングス タイルの構成をサポートするという理由などから、その基礎として選ばれた。機能プログラミングは、F#やOCamlなどの言語に人びとを引き付けるようなことである一方、もう1つの側面は、他の.NETフレームワークを利用するために重要である。
現段階ではF#は、.NET 4.0の機能と見なされていない。それどころか、J#と全く同様の方法で、別個のredistributableでシップされる。これにより、 Microsoftは引き続きMonoおよびCLR 2.0プラットフォーム上でF#をサポートすることができる。
他の新しいMicrosoft言語と同様の精神で、F#コンパイラおよびツールは、Microsoft Public Licenseのもとオープンソースになる(リンク)。このライセンスは、すべてのMicrosoftライセンスに限定されず、本質的に著作権に関する通知を所有 し、作成者を訴えない限りは、したいことは何でもできると書いてある。
Visual Studioでは、F#は単独で使用されることを想定していない。Microsoftは、デベロッパがF#を使用してアプリケーションの中核を構築するこ とを奨励しているが、プレゼンテーション層に関しては、VBやC#を使用することを勧めている。Don Syme氏(リンク)は、以下のように続ける。
高品質なF#のコアツールを提供することに向けたわれわれの取り組みは、プレゼンテーションリッチオブジェクト指向プログラミング環境としての Visual Studioの素晴らしい強みを拡大するように意図されている。結果として、今回のリリースでプレゼンテーションおよびデザイナーリッチプログラミング言 語としてのC#およびVisual Basicの強みを利用する決定をした。これは、F#ユーザがVisual Studioデザイナーツールを使用して、C#またはVisual Basicコードを生成し、これらのコンポーネントをそれらのF#アプリケーションに組み込むことを意味する。
F#は、OCamlの本質を超えてしまっているが、それらを完全に放棄しているわけではない。F# Power Packコンポーネントを使用して、デベロッパはOCamlでコンパイル可能なF#コードを記述することができる。これには、言語の制限サブセットを使用 することが必要になるが、できれば一線を越えてF#専用コードに入った場合に、デベロッパに知らせるツールがあると大変よい。
Dom Syme氏は、最後に以下のようにまとめている。
F#は、Microsoft Research、CambridgeおよびMicrosoft Developer Division間の高度な共同開発プロジェクトである。 言語アーキテクトとして、関わることが出来て大変うれしく思う。そして、今後もMicrosoft Researchにとどまることになる。われわれの素晴らしいチームには、ケンブリッジ、レッドモンド、バンクーバーおよび中国からのメンバーがおり、ド イツやニューヨークで作業をするチームメンバーもいる。このプロジェクトで共に作業をする人びとと、彼らのスキルに絶えず感心させられている。そして、こ れがMicrosoftにおける革新的な開発の最高の一例にしたい。