About a month ago, Ciprian asked for developers to join CR, and I thought since I love the .Net ecosystem, I should be able to help a little here and there.After I looked at the code, having never really understood compilers or transpilers in this case, I needed an easier way to visualize what was going on behind the hood, so I could get up to speed with CR.
I then decided to mock up a "Visual Compiler" to both test CR and to get a simple call graph.
The Visual Compiler (VCR), once setup enables seamless development and testing of CR, alot of improvements can be made, such as full debugging support or clicking errors to take you to the line of code, but for now its a pretty useful tool. With this I have been able to catch up quite a bit and add/fix a few runtime features such as virtual methods and interfaces to CR.
VCR has the following features;
- opening files
- enabling / disabling specific optimizations
- running the C# / CPP code and viewing output
- and testing the output of C# vs that of CPP.
- multiple compiler support (although there is no gui to set that, yet)
With the knowledge gained, I am hoping to complete a Pet Project (C# Editor, Compiler and Interpreter for iOS), that has been in the Attic for about 2 years now.
I am currently writing a few more tests and looking into delegates to have CR almost feature complete with the C# language.
Ofcourse even with this tool, I needed alot of guidance, which Ciprian has been kind enough to provide. I am pretty optimistic of where this project is heading :)
Oops, Almost forgot, this is what VCR looks like;
My next blog post will be on the architecture of CR itself, stay tuned.
Enjoy CR,
Ronald Adonyo.
I then decided to mock up a "Visual Compiler" to both test CR and to get a simple call graph.
The Visual Compiler (VCR), once setup enables seamless development and testing of CR, alot of improvements can be made, such as full debugging support or clicking errors to take you to the line of code, but for now its a pretty useful tool. With this I have been able to catch up quite a bit and add/fix a few runtime features such as virtual methods and interfaces to CR.
VCR has the following features;
- opening files
- enabling / disabling specific optimizations
- running the C# / CPP code and viewing output
- and testing the output of C# vs that of CPP.
- multiple compiler support (although there is no gui to set that, yet)
With the knowledge gained, I am hoping to complete a Pet Project (C# Editor, Compiler and Interpreter for iOS), that has been in the Attic for about 2 years now.
I am currently writing a few more tests and looking into delegates to have CR almost feature complete with the C# language.
Ofcourse even with this tool, I needed alot of guidance, which Ciprian has been kind enough to provide. I am pretty optimistic of where this project is heading :)
Oops, Almost forgot, this is what VCR looks like;
VCR Running on Windows Server 2012 R2 |
My next blog post will be on the architecture of CR itself, stay tuned.
Enjoy CR,
Ronald Adonyo.
No comments:
Post a Comment