Microsoft'un, .Net Framework'ü bağlayan sanal makine aracı Common Language Runtime, şirketin CLR'yi daha verimli ve ölçeklenebilir hale getirme planlarını açıkladığı bir yenileme çalışması için hazırlanıyor. Bu modernleşmenin anahtarı, Microsoft'un C# tasarımcısı olan Mads Torgersen'in söylediği gibi, IL olarak adlandırılan ve on yılda geliştirilmeyen ara dilin geliştirilmesidir. Şirket, IL'yi iyileştirmek ve CLR'yi programlama dilleri için daha zengin bir hedef yapmak istiyor.
CLR'nin amacı .Net programlarını verimli bir şekilde çalıştırmaktır. Microsoft'un temel yazılım mühendisi Ben Watson şu anda .NET'in en büyük probleminin, çalışma zamanının kendisinin ölçeklenebilirliğinin sınırlarıdır dedi. CLR, orijinal hedefinin ve tasarımının ötesine itiliyor. Watson, birden çok gigabayt'lık kod yüklendiğinde CLR'ye yerleştirilmiş algoritmaların çökmeye başladığını belirtti.
Yaklaşan bir gelişme, daha güvenli, daha performanslı, düşük düzeyli bir kod elde etmek için dil ve çerçeve özellikleri sunacak yeni bir tür olan "span of tee" olarak telaffuz edilen Span 'yi içeriyor. Span "t", tür parametresi anlamına gelir. Torgensen, Span , büyük miktarda veriyi kopyalamaya veya çöp toplama işlemi için duraklamaya ihtiyaç duymayan daha verimli bir kod oluşturmak için C# ve diğer diller tarafından kullanılacaklarını söyledi. CLR'nin yeni sürümleri, hızı artırmak için Span hakkında "bilgi" içerecektir. Span , .Net Framework'ün önümüzdeki birkaç sürümü boyunca kullanıma sunulacak.
Java dünyasının JVM'sine Microsoft'un muadili olan CLR, C#, Visual Basic ve F # gibi .NET dillerinin kod yönetimi sağlar. Kaynak kodu, dil derleyicileri tarafından IL koduna derlenmiştir; CLR, programı çalıştırırken IL'yi çalıştırıp çıktıyı makine koduna çevirerek çalıştırır. Diğer hizmetler, otomatik bellek yönetimi ve tür emniyeti de dahil olmak üzere CLR tarafından sağlanır ve programlayıcı bu hizmetleri sunmak zorunda kalmamakta.