Microsoftの.NetCLRの次のステップ

.NetFrameworkを固定する仮想マシンであるMicrosoftのCommonLanguage Runtimeは、CLRをより効率的かつスケーラブルにする計画を発表したことで、イメージチェンジが予定されています。

MicrosoftのC#のリードデザイナーであるMads Torgersen氏は、この近代化の鍵は、ILと呼ばれるCLRの基礎となる中間言語の改善であると述べています。同社は、ILを改善し、CLRをプログラミング言語のより豊富なターゲットにしたいと考えています。 

CLRの目標は、.Netプログラムを効率的に実行することです。現在、.Netの最大の問題は、ランタイム自体のスケーラビリティの固有の制限であると、MicrosoftのプリンシパルソフトウェアエンジニアであるBenWatson氏は述べています。 CLRは、本来の意図と設計を超えて推進されています。 Watsonは、数ギガバイトのコードがロードされると、CLRに組み込まれているアルゴリズムが機能しなくなると説明しました。 

差し迫った改善の1つに、「ティーのスパン」と発音されるスパンがあります。これは、より安全でパフォーマンスの高い低レベルのコードを実現するための言語およびフレームワーク機能を提供する新しいタイプです。 Spanの「t」はタイプパラメータを意味します。スパンはC#や他の言語で使用され、大量のデータをコピーしたり、ガベージコレクションのために一時停止したりする必要のない、より効率的なコードを作成する予定です。 CLRの新しいバージョンには、速度を向上させるためにSpanに関する「内部知識」があります。 Spanは、.NetFrameworkの次のいくつかのリリースで展開されます。 

CLRは、Javaの世界のJVMに対応するMicrosoftの機能として機能し、C#、Visual Basic、F#などの.Net言語のコード管理を提供します。ソースコードは、言語コンパイラによってILコードにコンパイルされます。CLRは、プログラムの実行中にILを実行し、出力をマシンコードに変換することによってプログラムを実行します。自動メモリ管理や型安全性などの他のサービスはCLRによって提供されるため、プログラマーはこれらのサービスを提供する必要がありません。