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.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM autolearn=ham autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: f5d71,304c86061dc69dba X-Google-Attributes: gidf5d71,public X-Google-Thread: 103376,5cb36983754f64da X-Google-Attributes: gid103376,public X-Google-Thread: 1014db,304c86061dc69dba X-Google-Attributes: gid1014db,public X-Google-Thread: 109fba,304c86061dc69dba X-Google-Attributes: gid109fba,public X-Google-ArrivalTime: 2004-02-11 15:29:39 PST Path: archiver1.google.com!news2.google.com!newsfeed2.dallas1.level3.net!news.level3.com!crtntx1-snh1.gtei.net!news.gtei.net!newsfeed1.easynews.com!easynews.com!easynews!border1.nntp.sjc.giganews.com!nntp.giganews.com!local1.nntp.sjc.giganews.com!nntp.comcast.com!news.comcast.com.POSTED!not-for-mail NNTP-Posting-Date: Wed, 11 Feb 2004 17:29:34 -0600 Date: Wed, 11 Feb 2004 18:29:33 -0500 From: "Robert I. Eachus" User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.4) Gecko/20030624 Netscape/7.1 (ax) X-Accept-Language: en-us, en MIME-Version: 1.0 Newsgroups: comp.lang.ada,comp.lang.c,comp.lang.c++,comp.lang.java Subject: Re: No call for Ada (was Re: Announcing new scripting/prototyping language) References: <20040206174017.7E84F4C4114@lovelace.ada-france.org> <54759e7e.0402071124.322ea376@posting.google.com> <2460735.u7KiuvdgQP@linux1.krischik.com> <54759e7e.0402081525.50c7adae@posting.google.com> <54759e7e.0402091826.2847e0c@posting.google.com> In-Reply-To: Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Message-ID: <6Lqdnd0T1ftDJ7fdRVn-jw@comcast.com> NNTP-Posting-Host: 24.147.77.160 X-Trace: sv3-4SgJh0lGdGCr2uajcKWZ093A9GZMQh0Sx+C/yyYaJfgXYcbwIotVPdgg7GzKH7UoDq2ZlnFvRil7r0l!FSJl8bftydoADadg0pLKM4IdIi9bI2F6WT2NEqP3mZ5pYv2jP1qTKrBEbj9lpg== X-Complaints-To: abuse@comcast.net X-DMCA-Complaints-To: dmca@comcast.net X-Abuse-and-DMCA-Info: Please be sure to forward a copy of ALL headers X-Abuse-and-DMCA-Info: Otherwise we will be unable to process your complaint properly X-Postfilter: 1.1 Xref: archiver1.google.com comp.lang.ada:5461 comp.lang.c:21995 comp.lang.c++:18775 comp.lang.java:2867 Date: 2004-02-11T18:29:33-05:00 List-Id: I wrote: > After she hung up, what she had said percolated through my head, and I > e-mailed a short Fortran example. Sure enough it produced garbage... Hmmm. Trying to be terse, I may have inadvertantly slandered Fortran, or the (intentionally unnamed) system vendor. The bug had nothing to do with Fortran as such. The Fortran standard was just aa clear as the Ada standard in this area. But the hardware vendor was working on upgrading their compiler for new hardware with a wider memory interface. So what Carol said on the phone bugged me until I worked out an example that would determine whether there was a bug in their compiler, or a misunderstanding. It turned out that the code worked correctly on their existing hardware, but broke on the new hardware. So she fixed the optimizer, and was able to share the code between the Ada and Fortran front-ends. (Unless a user defined floating-point type had explicit bounds. Then the Ada code would be much slower, but you have to assume that the user did that intentionally.) Incidently, I don't know why Ada compiler implementors picked me to call with that sort of question. (Or maybe they called everyone looking for an answer they liked to some questions.) There were three areas in the Ada 83 standard where everyone who was working on an Ada compiler--and wasn't represented on the then LMC (now ARG)--called me with the exact same questions. The simplest was described as "for I in -1..10 loop..." Yes, you were expected to reject that at compile time. ("for I in Integer(-1)..10 loop..." was okay.) The second, was that yes it was intentional that the size of record objects with discriminants could change at run-time, but only if the discriminants had default values. And the final one was that yes, elaboration of Ada generics happens at run-time not compile time. This causes some major issues if you want to implement generics as textual substitutions. Not that you can't do it, but there are some things that you have to work pretty hard to get right. I used to joke that I could tell how the vendors were doing on their compilers by when they called. ;-) -- Robert I. Eachus "The war on terror is a different kind of war, waged capture by capture, cell by cell, and victory by victory. Our security is assured by our perseverance and by our sure belief in the success of liberty." -- George W. Bush