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.129.46.149 with SMTP id u143mr614657ywu.93.1482281672681; Tue, 20 Dec 2016 16:54:32 -0800 (PST) X-Received: by 10.157.39.129 with SMTP id c1mr225892otb.15.1482281672635; Tue, 20 Dec 2016 16:54:32 -0800 (PST) Path: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!news.eternal-september.org!news.eternal-september.org!feeder.eternal-september.org!news.glorb.com!n6no1604294qtd.0!news-out.google.com!c1ni670itd.0!nntp.google.com!b123no2218166itb.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail Newsgroups: comp.lang.ada Date: Tue, 20 Dec 2016 16:54:32 -0800 (PST) In-Reply-To: Complaints-To: groups-abuse@google.com Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=67.0.242.189; posting-account=lJ3JNwoAAAAQfH3VV9vttJLkThaxtTfC NNTP-Posting-Host: 67.0.242.189 References: <1af458a8-cf5b-4dd7-824d-eed1ed5ffb21@googlegroups.com> User-Agent: G2/1.0 MIME-Version: 1.0 Message-ID: <9cf885ab-b087-415b-b8ec-00d031dbce65@googlegroups.com> Subject: Re: Ada 2012 Constraints (WRT an Ada IR) From: Shark8 Injection-Date: Wed, 21 Dec 2016 00:54:32 +0000 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Xref: news.eternal-september.org comp.lang.ada:32930 Date: 2016-12-20T16:54:32-08:00 List-Id: On Tuesday, December 20, 2016 at 4:00:57 AM UTC-7, Dmitry A. Kazakov wrote: > On 2016-12-19 23:33, Randy Brukardt wrote: > > "Dmitry A. Kazakov" wrote in message > > news:o32vjg$1jv4$1@gioia.aioe.org... > >> On 2016-12-16 20:51, Randy Brukardt wrote: > > ... > >>> The path was that set by Ada 83 with the idea of constraints. By your > >>> model, > >>> constraint checks belong to the implementation, and those have always > >>> been > >>> exposed in the specification. > >> > >> Not explicitly. It is like the implementation of "+" when an integer t= ype > >> declared. The implementation is assumed but not specified. > > > > Explicitly, by the semantic model I quoted earlier. > > > >>> Later versions of Ada have just built on this > >>> already existing (and very successful) idea, extending it to further > >>> cases. > >> > >> I meant explicit code snippets in declarations, which includes "is nul= l", > >> checks, etc. > >> > >> It is very different from having type operations producing new [sub]ty= pes > >> like > >> > >> subtype Y is X range 1..100; > >> > >> or > >> > >> type T is array (I) of E; > >> > >> They declare and implement operations implicitly. > > > > Only in your world-view, >=20 > Sure. >=20 > > not the official Ada semantics, for a subtype. >=20 > Which must be fixed. No, it doesn't. Ada's notion/definition of "subtype" is rational, reasonable, and useful. This doesn't change the fact that CS/OOP "subtype" is also a useful definit= ion, but they are separate, distinct, and different. A *LOT* of you communication problems on the matter stem from your refusal = to "talk in Ada" (use its definitions) -- as illustrates by Randy pointing = out that section in the RM which specifies a call with arguments violating = the subtype never execute the body.