Saturday, November 04, 2006

NetFX 3.0

Dustin Campbell and I were chatting the other day about the whole confusion behind the .NET Framework v3.0, and why they decided on that version number despite the fact that the core (i.e., the CLR) is remaining at v2.0.  He filled me in on a little nugget of information that I think, if entirely accurate [not that I doubt Dustin, but I doubt my ability to correctly remember everything that he said], should have been articulated by Microsoft in the first place to stop whiners like me from making such a big deal about the versioning.

It seems that all of the upcoming Orcas features that we've been calling "3.0" (LINQ, extension methods, yada yada yada) do not require anything new in the CLR.  The languages will have new compilers, but the new compiler will still generate v2.0 MSIL and metadata (i.e., they will generate CLR 2.0 assemblies). 

So, from that perspective, I can start to see why it's no longer important to tie the framework version number to the CLR version number.  It seems that the CLR is stable, and could effectively remain at the current version indefinitely without hindering the ability to add additional functionality to the languages (like LINQ and extension methods).