views:

94

answers:

2

Microsoft released the Shared Source Common Language Infrastructure (the code previously known as ROTOR) some years ago basically as a reference implementation of the .NET runtime. While the actual .NET runtime (mscorlib, mscoree, mscorjit, etc.) aren't compiled from the SSCLI, debugging them shows that they are remarkably similar and at a minimum share much of the same memory structures.

This has been an invaluable resource when debugging tricky system behavior with .NET 2.0 compiled assemblies. Now that 4.0 has been released with major changes to the runtime I'd love to find the reference source for that as well. Microsoft has changed names for the source in the past so I'm either searching for the wrong thing, or it hasn't been released. Is there reference source for a .NET 4.0 compatible runtime?

+1  A: 

It looks like Microsoft really wants you to download the source through Visual Studio 2008 but it looks like it's still possible to download if you know where to look. Available Source Code Components

Okay nevermind if you are interested in ROTOR it's dead AFAICT that's why you aren't finding anything newer: "Sadly, I can report that I corresponded directly with one of the authors of the Rotor book and he confirmed that it has gone the way of the dodo. He referred to it as a an example of the Law of 2 Feet in action...nobody cared enough about Rotor to keep it alive, so it died."

daveangel
It should be noted that this is the *actual* CLI source, and is under the MS Reference License, not the MS Shared Source License.
Simon Buchan
Thanks @daveangel, I'm actually interested in the platform code (JIT, Virtual Machine, etc.) that interpret and run the .NET assemblies. I don't really need want the source for the _framework_ (System.dll, System.Web.dll, etc.) those are easily read via the debugger source in VS or in Reflector.
Paul Alexander
A: 

For CLR/CLI 4.0 the .NET Micro Framework is open sourced, I guess it's the successor of ROTOR in a sense. I found it from the link ('its dead') posted by daveangel. Maybe it provides enough insight into the runtime internals for you.

quote from the Micro Framework site:

Several months ago at the Microsoft Professional Developers Conference, .NET Micro Framework 4.0 (PDC Session Video) was released in open source under the Apache 2.0 license. This means that users can now access the productivity improvements offered by this rich development environment with all the flexibility you need for small devices. The code for the libraries and even the CLR itself is available for you to morph as you need.

Zarat