Saturday, January 07, 2006

A language development to keep an eye on

.Net Language Integrated Query. I won't summarize it further than the previous link, but do yourself a favor and read it if you ever had to mix SQL strings into your code. This language innovation is big - a strongly typed (instead of SQL-string) based query facility for arbitrary data models (not just relational). If you want, you can apply filtering and projection to an in-memory array of objects no differently than you'd apply it to a relational table. What's really stunning however is all the other language innovation underpinning it - C# 3.0 evolved features like instance initializers, lambda functions, extension methods, and anonymous types, to support LINQ, and the absolutely super-stunning aspect of it all is that they succeeded in implementing almost all of them as syntactic sugar managed completely by the compiler. (No-sugar versions of these constructs still being available to programmer when needed). I get the feeling C# is seriously leaving Java behind in language innovation. Oh yeah, one of its primary architects is Don Box (but don't assume I'm judging it by authority).

No comments: