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_05,INVALID_DATE autolearn=no autolearn_force=no version=3.4.4 Path: utzoo!utgpu!jarvis.csri.toronto.edu!cs.utexas.edu!wuarchive!decwrl!shelby!unix!hplabs!hp-ses!hpcuhb!hpcllla!hpclisp!defaria@hpclapd.HP.COM From: defaria@hpclapd.HP.COM (Andy DeFaria) Newsgroups: comp.lang.ada Subject: Re: if UNIX then USE_C ?? (was: Reasons for drop) Message-ID: <920018@hpclapd.HP.COM> Date: 28 Feb 90 19:51:06 GMT References: <5476@crdgw1.crd.ge.com> Organization: Hewlett-Packard Calif. Language Lab List-Id: >/ hpclapd:comp.lang.ada / epstein@trwacs.UUCP (Jeremy Epstein) / 10:55 am Feb 27, 1990 / >[I promised myself I wouldn't join this grudge match, but...] >While that's certainly true, look at how Ada overloads symbols. For >example, parentheses are used for parameters as well as subscripts >(that's something that totally confuses me as an old-time C programmer). Why does C insist on differentiating between "=" meaning assignment and "=" meaning equality test. People naturally write "A = B" and "if A = B...". Based on the context the compiler should be able to figure out whether the "=" sign refers to assignment or equality test. I know that C allows you to do the assignment and then check the value of the assignment and that this is often useful but it is IMO something that totally confuses me as a novice C programmer. >And while we're on the subject of Ada "end", why is it that Ada sometimes >uses "end" to match "begin", and other times to match other keywords? I looks like you need a little look-ahead. Ada matches a "end" with a "begin" but matches an "end if" with an "if" ("end case" with "case", "end loop" with "loop", etc).