Greetings,
I've been writing a framework for the Common Language Infrastructure (aka .NET) for about six to eight months. Its end goal is to greatly reduce the amount of work necessary to write a compiler. It will do so by handling the heavy lifting, such as transforming high-level concepts into somewhat lower-level concepts for use by the CLI.
Above is an image which gives a basic structure outline...