Spec# is what C# 1.0 should have been

Dec 26, 2012 at 9:48 PM

Are there anyone who feels the same way? Spec# seems like it's thought out and executed much better than C# 4.0.

If C# was Spec# with all the fluff taken out from C# 4.0, i.e. non generics, etc, extensions everthing, reference to be non-nullable by default, Maybe type, etc, and frozen in time, it would have been perfect.

Even great features of Spec# is plagued by these flaws, no? For example the non-nullable references in the language, there are still null checks done behind the scenes for these, right?

I remember watching a video where Anders was saying that they made a mistake by not making references non-nullable by default and that they could have achieved much better performance and code clarity. It seems like there is no way around this to have true non-nullable references in any .NET language due to CLR.


Anyway just thought I would get your thoughts on the subject.