After lots of procrastination, I finally decided I was being left behind by the .Net community and started researching LINQ (Language INtegrated Query) and its underlying technologies - anonymous methods, anonymous types, lambda expressions (predicates and assignments), and extender methods etc. Ironically, I purchased an APress’ Pro LINQ exactly one day before finding out that Microsoft had made Introduction to Microsoft LINQ freely available (or nearly so - you need a Passport account, and have to aquiesce to a short personal info questionnaire). I don’t feel like my APress dollars were wasted, however. Their treatment of the different classes of LINQ (-to Objects, -to ADO.Net, -to XML, etc.) appears to be fairly exhaustive, where the ‘Intro’ volume looks like it lays the groundwork for the technology. One of the items that caught my eye immediately was the concept of extender methods, which allow developers to change the behavior of existing types - even (or perhaps particularly) sealed ones. Now, that’s an excellent idea. More...