It supports generics but not lambdas.




I'm not convinced by this argument. Hammers aren't illegal just because some people might misuse it and hurt themselves. If people are making these kinds of errors the onus is on them to use the language properly.
You're talking to the guy who requested the 'override entry point' and 'run in kernel mode' options tB now supports, and wants inline asm and pointer aliases, so this is hardly about shying away from letting people shoot themselves in the foot. But it has to be a net improvement on the language. Creating easy bugs and raising the learning curve because someone is too lazy to type theirs vars but isn't satisfied with variants... it's not worth the tradeoff.