Arne said:
That is usually not considered within the scope of the language itself.
I am not aware of any language that enforces good style and conventions.
It is left to external tools (FxCop is an example of such for .NET).
Can you imagine the compiler give errors on wrong naming convention, bad
indentation, too long methods, missing comments etc. ?
Good point. And no I couldn't imagine that! But I'm thinking more about
syntactical elements of the language that seem to be a coin toss.
Clearly, curly braces aren't required around a one statement part of an
if statement in order for the compiler to do it's syntax analysis. It's
also not required--for syntax analysis purposes--that the language
require a case statement be terminated and not fall through to the next.
Yet the language designers, for the sake of clarity, made the latter a
requirement but not the former.
MS has published recommendations on somethings that goes beyond language
definition.
Yes, but no one follows them completely, including MS. "The great thing
about standards is that there are so many to choose from."
I think it is obvious from the result that "look and feel compatibility"
with C++ and Java has been a major design goal for C#.
I suppose that makes sense, except in the cases where they quite
deliberately took away that look-and-feel compatibility for the sake of
clarity.