Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!cs.utexas.edu!asuvax!mcdphx!dover!digital!norm!shelley From: shelley@atc.sps.mot.com (Norman K. Shelley) Newsgroups: comp.lang.eiffel Subject: Comments on proposed Eiffel language changes Message-ID: <48a55876.12c9a@digital.sps.mot.com> Date: 14 Feb 90 22:00:27 GMT Sender: news@digital.sps.mot.com Lines: 69 Comments on I.S.E.'s proposed changes for Eiffel 3.0 (14Feb90) The new creation syntax and semantics looks very nice. The demise of the special keywords - Clone, Forget, and Void - in favor of the new syntax and semantics is welcomed. "void references" problem: The Void concept being replaced by the use of the class NONE appears to be a very nice improvement. The "improved syntax and semantics for the preconditions and postconditions" is most welcomed. New feature: As an addition for novice or unsuspecting programmers, it would be useful when a redefined routine trys to copy its parents pre or post condition if the compiler would warn the user of the redundancy. Proposed variable argument enhancement. > Many people do like, however, the flexibility of routines for which the > number of arguments is not known in advance. Printing procedures are > the classical example. I must agree! An Eiffel variable argument mechanism would be most useful. > The mechanism may also be useful at the level of interfaces between > Eiffel and other languages such as C and (some versions of) Fortran > which support variable numbers of arguments; an example in C is > printf. Another example is SUN's "Xview" library which uses variable arguments heavily. > Finally, although the default alphabet for identifiers is > still the English letters plus digits and underscore, it becomes > possible to use others if they are specified in a special file New feature: I would like to propose that the hyphen be added to the default alphabet for identifiers and that the hyphen take over the accepted use of the underscore for separating words in an identifier. Page 240 of "Eiffel: The Language" states that "internal upper-case letters ... as in putAtRight, contradicts the standard conventions of English ... and is not part of the recommended style." I agree BUT must note that the underscore ('_') as a word separator is NOT English either. A whitespace is the accepted standard but computers have troubles with whitespace in names/labels so what do we do? Common Lisp uses hypens ('-') as a separator and this has more acceptance in English than an underscore. So if we can't use blanks because of computer limitation and internal upper-case because it does not match current language conventions, then I think hyphens make MUCH more sense than underscores which themself do NOT conform to current language conventions. ------------------------------------------------------------------------------- The reason for some qualified approvals is that until I can actually try something I usually can not find the really deep problems that are hiding beneath the surface. Norman Shelley Motorola - ATC 2200 W. Broadway AZ09/M350 Mesa, AZ 85202 ...!uunet!dover!atc!shelley shelley@atc.sps.mot.com (602) 962-2473