From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.3 required=5.0 tests=BAYES_00,INVALID_MSGID autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,d1df6bc3799debed X-Google-Attributes: gid103376,public From: dewar@merv.cs.nyu.edu (Robert Dewar) Subject: Re: Not intended for use in medical, Date: 1997/05/10 Message-ID: #1/1 X-Deja-AN: 240537598 References: <3.0.32.19970423164855.00746db8@mail.4dcomm.com> <5kl9qc$g4d@bcrkh13.bnr.ca> <5kmek2$9re@bcrkh13.bnr.ca> <33727FA5.5C7A@sprintmail.com> Organization: New York University Newsgroups: comp.lang.ada Date: 1997-05-10T00:00:00+00:00 List-Id: <> Bad reason! It is almost always a mistake in languages to make compromises in the design on the grounds that users of language X won't be happy unless you do. Every time I have seen this done I think it is a mistake. Three examples: In Algol-68 Really we should make people write ref all the time because it is important for people to know that something is a variable, but if we make the normal declaration for an integer variable be: ref int x; Fortran and Algol-60 programmers will never tolerate it, so let's make a special rule -- that the ref is implied here, so we can write: int x; but only in this case, for other declaration forms, the ref is required. Bottom line: confusion, and surprise! Neither Algol-60 nor Fortran programmers like confusion! In Ada 83 (and Ada 95) Really we should declare the type of everything, but Fortran users would never put up with for x in integer range 0 .. 10 loop ... so let's have a special rule that we get a default use of integer here. Similarly, Fortran users will never put up with having to declare all those array types, so let's allow anonymous array declarations: My opinion is that both these decisions are mistakes, they introduce irregularity and confusion. People are not going to say, "Hey, let's use Ada because it has all the goodies we know and love from language X". If that is their viewpoint, there is a language that much more certainly has all the goodies from language X, and that they are much more likely to use. If people switch to a new language it is because they see some general advantages. If they make the switch, they want to find something coherent and well designed when they get there. Features should go in a language because they make sense in terms of the syntactic and semantic framework of the language, not because of some perceived political value. That is especially true of tiny syntactic gizmos.