Difference between revisions of "Talk:Eiffel Language Skins"

(New page: --~~~~ Under '''must-haves''' is listed "inherit keyword replaced by T1 : T2 as used in al C languages that support inheritance". I disagree. C# (and maybe others) uses a colon like that, ...)
 
Line 1: Line 1:
 
--[[User:Peter gummer|Peter gummer]] 13:44, 19 April 2012 (UTC) Under '''must-haves''' is listed "inherit keyword replaced by T1 : T2 as used in al C languages that support inheritance". I disagree. C# (and maybe others) uses a colon like that, but Java does not: Java uses "extends". I think the colon idea is more likely to confusion. I can't see Eiffel's "inherit" keyword causing any confusion at all. I think we should remove this; it's not a must-have; it's not even a desirable, it's an undesirable ;-)
 
--[[User:Peter gummer|Peter gummer]] 13:44, 19 April 2012 (UTC) Under '''must-haves''' is listed "inherit keyword replaced by T1 : T2 as used in al C languages that support inheritance". I disagree. C# (and maybe others) uses a colon like that, but Java does not: Java uses "extends". I think the colon idea is more likely to confusion. I can't see Eiffel's "inherit" keyword causing any confusion at all. I think we should remove this; it's not a must-have; it's not even a desirable, it's an undesirable ;-)
 +
 +
--[[User:Peter gummer|Peter gummer]] 13:57, 19 April 2012 (UTC) CamelCase is the convention for C# and Java, but there are plenty of popular languages out there that use underscores, similar to Eiffel. So I question whether this is needed.
 +
 +
If we do decide to go for CamelCase, which variant? Java follows the Smalltalk convention that ClassesStartWithUpperCase and everything else starts with lower-case, but in C# public features start with upper-case too.
 +
 +
The Eiffel convention that looks most alien is that CLASSES_SHOUT_AT_YOU. Java and some other languages have stupidly followed the C convention that constants are all upper-case (although C# doesn't do that, thank goodness), so Eiffel class names probably look like constants to a lot of people. But those upper-case class names look very weird even to C# programmers, so I would consider CamelCaseClassNames to be a must-have.

Revision as of 05:57, 19 April 2012

--Peter gummer 13:44, 19 April 2012 (UTC) Under must-haves is listed "inherit keyword replaced by T1 : T2 as used in al C languages that support inheritance". I disagree. C# (and maybe others) uses a colon like that, but Java does not: Java uses "extends". I think the colon idea is more likely to confusion. I can't see Eiffel's "inherit" keyword causing any confusion at all. I think we should remove this; it's not a must-have; it's not even a desirable, it's an undesirable ;-)

--Peter gummer 13:57, 19 April 2012 (UTC) CamelCase is the convention for C# and Java, but there are plenty of popular languages out there that use underscores, similar to Eiffel. So I question whether this is needed.

If we do decide to go for CamelCase, which variant? Java follows the Smalltalk convention that ClassesStartWithUpperCase and everything else starts with lower-case, but in C# public features start with upper-case too.

The Eiffel convention that looks most alien is that CLASSES_SHOUT_AT_YOU. Java and some other languages have stupidly followed the C convention that constants are all upper-case (although C# doesn't do that, thank goodness), so Eiffel class names probably look like constants to a lot of people. But those upper-case class names look very weird even to C# programmers, so I would consider CamelCaseClassNames to be a must-have.