I'm sure this has probably already been said, but I wanted to "put it on paper" as it were. I was showing a fellow at work a few things with Mono, and decided that the quickie demo I did was interesting enough that I should do it again. If you're not familiar with Mono, it's an alternative open source implementation of the CLI spec.
It's a compiler implementation and a library implementation and they can be use separately. What that means is that you can compile with Mono, run against their libraries, or you can compile on MSFT and run against their libraries...but where it really gets interesting is if you compile on Microsoft and run against the Mono libraries, or vice versa. This screencast demos a few of these scenarios.
In this demo I create an application from the command line, compile it with Mono and .NET, use Reflector on both and compare the resulting IL of both. Then I run them both and use Process Explorer to see what's going on at runtime.
Ads by The Lounge