I'm excited to see that lambda expressions are part of the C# 3.0 syntax - the compiler infers anonymous methods from them. I think that's pretty cool. I also like that they're extending the property-based initlialization syntax available to attribute initialization to all classes.
What I don't like: implicit typing. Strong typing has been a major and important feature of C#, and I think by permitting implicit typing, we're going to be encouraging programmer lazyness. If I wanted to write:
var s = "Blah";
I could have been using JScript or JScript.NET. It looks like we're starting do fall away from code elegance.
I also don't like the extensible classes pattern as another instance of where we might be falling away from elegance or maintainability.
I do like the query design pattern they're implementing. Programmatic SQL-like code - very nifty!
QuoteI do like the query design pattern they're implementing. Programmatic SQL-like code - very nifty!
I watched a video on Channel9(?) about that "no fuss" SQL stuff, looked very nifty indeed :)