The C# Team seems to speak out of both sides of its mouth

March 18, 2007
No Comments.


I was reading an article about VB9’s XML Literal support and why C# decided not to support it.  (Note, I agree with C#'s lack of support for it, but that’s not what this post is about).  Paul Vick said:

It is extremely risky to tie yourself explicitly to a technology that may or may not be here 15 years from now. Right now, XML is king. But what happens if some other technology comes along and knocks it off its perch? What if things radically shift in some other direction and XML suddenly becomes a side track instead of the main line?

While I agree with this notion, this seems to be the exact reason for *not* including LINQ. Why are they willing to tie the language to a brand-new notion of language integration that might not be here in two years, but they saying they don’t want to pollute the language with XML becuase they are not sure it will be here soon?

It seems like they are talking out of both sides of their mouth on this one. If it is important that the language remain clear and simple, why introduce LINQ with the related features (extension methods and variable inference)?