Microsoft’s , the virtual machine that anchors the .Net Framework, is due for a makeover, with the company announcing plans to make the CLR more efficient and scalable.
Key to this modernization will be improvements to the intermediate language underlying the CLR, called IL, which has not been upgraded in ten years, said Mads Torgersen, lead designer for C# at Microsoft. The company wants to improve the IL and make the CLR a richer target for programming languages.
The goal of the CLR is to run .Net programs efficiently. Currently the biggest problem with .Net is the inherent limits of scalability of the runtime itself, said Ben Watson, Microsoft principal software engineer. The CLR is being pushed beyond its original intention and design. Watson explained that when multiple gigabytes of code are being loaded, algorithms built into the CLR start breaking down.
One imminent improvement involves , pronounced “span of tee,” a new type that will offer language and framework features for achieving safer, more-performant, low-level code. The “t” in Span
, the CLR provides code management of .Net languages including C#, Visual Basic, and F#. Source code is compiled by the language compilers into IL code; the CLR runs the program by executing the IL and translating the output into machine code while the program is running. Other services are provided by the CLR including automatic memory management and type safety, saving the programmer from having to provide for these services.