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.36.81.149 with SMTP id s143mr1052321ita.30.1481667197714; Tue, 13 Dec 2016 14:13:17 -0800 (PST) X-Received: by 10.157.17.3 with SMTP id g3mr6526172ote.8.1481667197666; Tue, 13 Dec 2016 14:13:17 -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!feeder3.usenet.farm!2.eu.feeder.erje.net!feeder.erje.net!2.us.feeder.erje.net!newspeer1.nac.net!border2.nntp.dca1.giganews.com!nntp.giganews.com!p16no6368962qta.1!news-out.google.com!m27ni18459qtf.1!nntp.google.com!p16no6368958qta.1!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail Newsgroups: comp.lang.ada Date: Tue, 13 Dec 2016 14:13:17 -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: <47366b42-c0a3-41bf-a44a-5241c109d60f@googlegroups.com> User-Agent: G2/1.0 MIME-Version: 1.0 Message-ID: <999c67b0-4478-4d2b-8108-32ac48fe6316@googlegroups.com> Subject: Re: Ada 2012 Constraints (WRT an Ada IR) From: Shark8 Injection-Date: Tue, 13 Dec 2016 22:13:17 +0000 Content-Type: text/plain; charset=UTF-8 Xref: news.eternal-september.org comp.lang.ada:32791 Date: 2016-12-13T14:13:17-08:00 List-Id: On Tuesday, December 13, 2016 at 2:11:42 PM UTC-7, Dmitry A. Kazakov wrote: > On 2016-12-13 17:59, G.B. wrote: > > On 13/12/2016 12:19, Dmitry A. Kazakov wrote: > >> On 13/12/2016 11:39, G.B. wrote: > >> Being a part of the body it does not belong to declarations. > > > > Right, Pre aspects are *not* body! > > They are being executed at run time. So? The construct "Procedure X( Y: Positive );" has to have Y checked at runtime in the general case. (Yes, it can be optimized out IFF the compiler can prove that all call-sites are already of subtype Positive.) > >>>> It is an explicit contract. > >>> > >>> Can you make it a Boolean expression? > >> > >> That depends on the language in question. It is not an expression in > >> Ada and cannot be made one. > > > > Please, it's simple, actually, > > It is a predicate which has nothing to do with Ada's Boolean expression > you wrote. See another post in this thread. Ok, I'm looking at the original post... it's another post, and on this thread, but doesn't really seem germane to the point you're trying to make. ;)