2009年マイクロソフトのLucas Bolognese氏は、C#とVisual Basicが共に進化していくことを約束した。2つの言語は、継続して自由に機能を追加するが、もう一方が何らかの方法で追加することができない新しい機能の実装を検討することはない。.NET 4においては、関数型プログラミング機能をVisual Basicに追加、dynamic機能をC#に追加して、約束は現実に向かっていた。しかしながら、長引く結合と新しい問題が発生して、約束に疑問を呈すことになった。
現在の議論の中心は、Windows Phone 7にVBのサポートが欠けていることである。我々は数か月の間、マイクロソフトがそれらの新しいプラットフォームでVBを有効にするというコメントを探した。Windows市場はフリー/シェアウェアで飽和しているが、Windows Phoneは、.NETエコシステムから離れずにマスマーケットを対象にしようとしている独立系ソフトウェアベンダに取って重要なプラットフォームである。そのため、VBのファンがいきり立ったとしても不思議ではない。
マイクロソフトが、これ以上マーケットシェアを失う前に、彼らの最重視している言語のみにすべてのリソースを投入してプラットフォームの準備するという選択したとしても驚くことではない。CLRは、明確にC#とVB(そして不思議なことにJava)の両方に対して設計されている。C#は、コア機能のデファクト言語のため、最初に終わらせる必要がある。声は小さくなっているが、現在も約束は継続されており、Visual Basicユーザはいくつかの点では誇りに思っているが、プラットフォーム全体では信用性を失っているに違いない。
現在、CTP版のVisual Basic for Windows Phone 7がリリースされているため、緊張は若干緩和されるはずである。マイクロソフトは、これは「早期アクセス版」であり、製品として使うのは難しいと強調する。また、提供されているSilverlightテンプレートについても、まだXNAがサポートされていない状態である。XBox 360でVisual Basicを使う方法がまだないことは、数年に渡り痛いポイントである。VB 9にVBランタイムとXBoxでサポートされていないオペコードなしで、アプリケーションをビルドできる機能が追加された時点でこれは解決すると考えたが、そうはなっていない。
現在のところ、言語を協調して進化させるという約束には含まれていない、F#も同様にWindows Phone 7のサポートが遅れている。先月リリースされたF#の8月CTPには、F#ランタイムのWP7バージョンであるFSharp.Core.dllが含まれている。F# Silverlightアプリのプロジェクトテンプレートが必要な場合、Windows Galleryで提供されている。VBと同じように、現時点では、F# XNAアプリのテンプレートは提供されていない。
我々がフォーラムを見た限り、次に人気のある言語は、多くの人がそれを望んではいるがIronPythonではない。また、事実上捨てられたJScript.NETやIronRuby言語でもない。その代わりに人々が尋ねているのを見つけたのは、不思議なハイブリッドとして知られるC++/CLIである。どうやらそれらは、レガシC++アプリケーションをWindows Phoneに移植したいと考えている多くの開発者にとって、C++/CLIは、ベストなルートに見えるのであろう。ユーザインターフェイスについては、確実に書き直す必要があるが、他のコードベースは再利用することができる。(C++/CLIは、ECMA-372下で標準化されており、サードパーティによって、ハードウェアをサポートすることができる。)