Microsoft is exploring innovative ways to expand adoption of .Net applications on platforms with no .Net toolchain. On the latest move, the software giant has announced its open source project called CoreRT that generates C++ code directly from any .Net C# application.
The open source compiler tool depends on RyuJIT that allows .Net programs to run on environments where they can be compiled into native code. As of now, developers have been using RyuJIT on Windows desktop and phone environment, MacOS and few Linux distribution. However, RyuJIT is not capable of generating machine code that works with processor and OS. This eliminates the possibility of using RyuJIT on an IoT device.
“We believe that investing in C++ code generation is going to allow the .NET ecosystem to grow and support platforms that have not been invented yet,” Microsoft program manager Jeffrey T. Fritz wrote in a blog post.
With Microsoft’s CoreRT, developers will be able to deliver their applications on platforms that are not compatible with .Net. Additionally, the tool takes care of elegant compiling and mapping of corresponding features from .Net program to C++ as both environments do not have a one-to-one correspondence between features.
On a broad level, open source CoreRT can certainly help developers to expand the reach of .Net ecosystem. Since .Net is an open source technology, third-party platforms and tools can easily create runtime translation system from C# to C++. Moreover, OpenRT makes it way easier to write a one-time transpiration system.