Very nice. I'm wondering and hoping that Microsoft will start releasing design/architecture documentation and walkthroughs. Something that's sorely lacking from most open source projects is any sort of documentation to help would-be contributors get up to speed and wrap their heads around things. On a lot of smaller projects it's not a huge deal, but some of the new dotnet foundation stuff is MASSIVE.
Yeah this is great. I'm really looking forward to detailed docs and explanations of some of the more low level and not-so-publicly understood parts.
For instance, AFAICT, the whole double locking initialization question doesn't have a sold public answer. It's unsure that "myfield = new Foo()" is totally safe if the constructor throws. Obviously that'd be a huge flaw if not safe, but even top C# experts don't seem to be sure. With a fully open source CLR and docs, we should be able to figure this stuff out, rather than finding a few things of blog posts from 2004 and guessing.
We could also learn why some things are the way they are. For instance, why can you lock (Monitor) on every object? The syncblock on each object can't be free, so why is this encoded into each object (or even available at all), versus dedicated sync objects (which are what gets used in practice, anyways).
And maybe someone will provide much needed enhancements, like a way to effectively use the stack when safe. Or maybe some research projects will add advanced type features, which spark the way forward into the actual implementation.
I'm very much looking forward to this and really hope it marks a new era beyond hassle-free use on Linux.