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=0.6 required=5.0 tests=BAYES_00,FROM_WORDY autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,66bc6b039f1e005d X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2000-10-09 17:42:52 PST Path: supernews.google.com!sn-xit-02!sn-xit-03!supernews.com!xfer13.netnews.com!netnews.com!howland.erols.net!nntp.flash.net!news.flash.net!not-for-mail From: "Ken Garlington" Newsgroups: comp.lang.ada References: <2BED68CA963D6D55.A78776F656DA0452.75A61ED22116F1B6@lp.airnews.net> Subject: Re: Three simple questions X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Message-ID: Date: Tue, 10 Oct 2000 00:42:51 GMT NNTP-Posting-Host: 216.215.84.153 X-Complaints-To: abuse@flash.net X-Trace: news.flash.net 971138571 216.215.84.153 (Mon, 09 Oct 2000 19:42:51 CDT) NNTP-Posting-Date: Mon, 09 Oct 2000 19:42:51 CDT Organization: FlashNet Communications, http://www.flash.net Xref: supernews.google.com comp.lang.ada:1097 Date: 2000-10-10T00:42:51+00:00 List-Id: "Frank Christiny" wrote in message news:2BED68CA963D6D55.A78776F656DA0452.75A61ED22116F1B6@lp.airnews.net... > Friends, > > Having arrived recently into the green Adian world, I am trying to > assimilate all there is to know about this powerful, unfairly > maligned computer language. Most questions I have been able to > answer from the FAQs here and there but there are three (so far) that > have gone unanswered: > > 1. What is the correct pronunciation of Dr. Ichbiah's name? > Is the "ch" pronounced as in "Loch" or as in "each"? Is the > final "h" is silent? I believe it is something like "itch-bee-ahhhh," but I don't know for sure. > 2. What is the rationale for case-insensitivity in the language? > I am beginning to think it is mostly for historical reasons > (some machines didn't have two case letters way back then, etc.). > Are there any real technical reasons for why this is so even > after Ada95, besides preserving backwards compatibilty? A hint as to the answer to this question may lie in Section 2 of the Ada83 Rationale: "The allowed characters belong to the ISO (ASCII) character set, and the text of a program may contain both upper case and lower case letters. For portability reasons, it is possible to write any program in a 56 character subset of the ISO character set.... Reserved words other than operators cannot be redeclared, and operators can only be redeclared as operators and with the same precedence. Hence programmers cannot write obscure programs by redefining the meaning of words that play an important syntactic role in the definition of the structure of Ada texts.... an underline character may appear between two other characters of an identifier. This underline is significant and plays the role of the space in ordinary prose (but without breaking the integrity of the identifier). The need for such an underline is seen from good choices of names such as BYTES_PER_WORD rather than BYTESPERWORD. Furthermore the significance of the underline makes SPACE_PER_SON a different identifier from SPACEPERSON or SPACE_PERSON and A_NYLON_GRIP different from ANY_LONG_RIP." -- http://www.adahome.com/LRM/83/Rationale/Text/ratl-c2.hlp So, at least part of the argument for case-insensitivity could be backwards compatibility (as also described in section 2.1 of the Ada83 standard). However, it could also be argued that allowing the following might be considered "obscure" programming: procedure Launch (Person : String); procedure Launch (Space : Positive); SpacePerson: String; SpacePerSon: Positive; ... Launch (SpacePerson); -- compiles (and maybe executes) without an explicit error message. -- Is it what was meant? Will anyone notice? > 3. How can one block-comment in Ada? > It can become cumbersome sometimes, adding all those "--"s in > front of a large block of code one wants to "test out" on the fly. > Again, are there any good technical-engineering reasons why this > feature was left out? This one is a little easier to answer. Again, from section 2 of the Rationale: "Comments may appear alone on a line or at the end of a line. As an end of line remark, the comment should appear as an explanation of the preceding text -- hence the use of a double hyphen (doing duty for a dash) is natural and appropriate, as illustrated by this sentence. For simplicity, a space is not allowed between the two hyphens. No form of embedded comments (within a line of text) is provided, as their utility is insufficient to justify the extra complexity. Single comments that are larger than one line are not provided. Such comments would require a closing comment delimiter and this would again raise the dangers associated with the (unintentional) omission of the closing delimiter: entire sections of a program could be ignored by the compiler without the programmer realizing it, so that the program would not mean what he thinks. Long comments can be written as a succession of single line comments, thus combining elegance with safety." > > Regards, > -- > Frank Christiny fchris@pdq.net > Sr. Software Engineer Lockheed Martin Space Operations > Houston, Texas, USA http://freeweb.pdq.net/fchris/