OK. Here is my first update over the long weekend :)
I realized (and was advised) that I needed to delve deep into the working of the CLR to get a crystal clear picture, before I could start working on the front-end of the compiler. So I grokked it up a bit over the long weekend. I also bought an excellent book for understanding the CLR in depth. Its written by one of the guys who worked on the developing the CLR.
Compiling for the .NET Common Language Runtime by John Gough, Prentice Hall.
So I ve got both my reading glasses and my thinking cap on...
Here are some of the things I have been reading up about -
- The raison d'ĂȘtre for using a virtual stack machine in the first place.
- The code reuse (implementation factorization) argument.
- Semantic factorization or bridging the semantic gap (between source and machine
language) argument.
- Portability and security argument.
- Garbage Collector - Memory Management handled by the CLR.
- Memoery safety and verification.
In my next post I will hopefully elaborate on the said topics in detail.
