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=unavailable autolearn_force=no version=3.4.4 X-Received: by 10.182.236.4 with SMTP id uq4mr20515851obc.3.1454800130231; Sat, 06 Feb 2016 15:08:50 -0800 (PST) X-Received: by 10.182.112.202 with SMTP id is10mr369863obb.7.1454800130155; Sat, 06 Feb 2016 15:08:50 -0800 (PST) Path: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!news.eternal-september.org!mx02.eternal-september.org!feeder.eternal-september.org!news.glorb.com!peer03.iad.highwinds-media.com!news.highwinds-media.com!feed-me.highwinds-media.com!o2no2779554iga.0!news-out.google.com!kr2ni8696igb.0!nntp.google.com!o2no2779552iga.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail Newsgroups: comp.lang.ada Date: Sat, 6 Feb 2016 15:08:49 -0800 (PST) In-Reply-To: Complaints-To: groups-abuse@google.com Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=91.55.220.198; posting-account=rmHyLAoAAADSQmMWJF0a_815Fdd96RDf NNTP-Posting-Host: 91.55.220.198 References: <02241ec4-0f95-4f63-9abc-092f167eb59e@googlegroups.com> User-Agent: G2/1.0 MIME-Version: 1.0 Message-ID: Subject: Re: Ada package registry? From: AdaMagica Injection-Date: Sat, 06 Feb 2016 23:08:50 +0000 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable X-Received-Bytes: 2960 X-Received-Body-CRC: 2083990223 Xref: news.eternal-september.org comp.lang.ada:29382 Date: 2016-02-06T15:08:49-08:00 List-Id: Am Samstag, 6. Februar 2016 02:25:59 UTC+1 schrieb Randy Brukardt: > [What I mean by expressing assumptions is that it's unlikely that any rea= l=20 > Ada code would really run anywhere. I've been having fun with Gautier ove= r=20 > his "unconditional portability" claim, as one only needs a single=20 > counter-example to disprove the claim. After a few obvious problems with = the=20 > choices of Janus/Ada were worked out, I pointed out that his types wouldn= 't=20 > work on our old U2200 compiler (as that was a 1's completement, 36-bit=20 > machine). He decided quite reasonably not to worry about that, but that= =20 > means in his case, that means his code is "unconditionally portable" so l= ong=20 > as your target supports 32-bit integers and is 2's complement. That might= be=20 > 99% of machines, but its not quite unconditional.] In my Ada courses, I warn participants not to take compiler traits for Ada = properties. I also warned them to be aware of implicit presuppositions, e.g= . do not assume that integers are implemented as two's complement; if your = code somehow depends on this fact, do document it somewhere. I just try to make them aware of hidden presuppositions. Whether they will be is a different story. I myself do not know which impli= cit presuppositions I depended on in my professional life. I ported MLoC airborne Ada 83 code to Ada 95 on different HW for full scale= flight simulation and was astonished how little changes were needed. But I= was bitten by the requirement that source and target sizes for Unchecked_C= onversion have to be the same. That was a lesson, you can believe me!