I'm a huge fan of the .NET 3.5 language extensions. I want more: give me mix-ins, please!
Ingrate that I am, I think perhaps we should celebrate what we have before resuming our whining ways. And we should take stock too ... because new technology invites abuse.
"With great power comes great responsibility". My spidey sense is tingling already as villainous extension methods threaten the city. Wanna fight back?
Check out these new design guidelines, specifically for extension methods and LINQ implementations, from the good folks at Microsoft who brought us the invaluable Framework Design Guidelines: Conventions, Idioms, and Patterns for Reusable .NET Libraries.
Don't have this book? Go get it and discover not just what is recommended but why. The guidelines are not perfect ... as evidenced by recent debates on the relative merits of interfaces and abstract classes ... but I love 'em nonetheless. 'Nuf said.