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,XPRIO autolearn=unavailable autolearn_force=no version=3.4.4 Path: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!news.eternal-september.org!news.eternal-september.org!feeder.eternal-september.org!nntp-feed.chiark.greenend.org.uk!ewrotcd!reality.xs3.de!news.jacob-sparre.dk!franka.jacob-sparre.dk!pnx.dk!.POSTED!not-for-mail From: "Randy Brukardt" Newsgroups: comp.lang.ada Subject: Re: Ada 2012 Constraints (WRT an Ada IR) Date: Wed, 21 Dec 2016 16:12:49 -0600 Organization: JSA Research & Innovation Message-ID: NNTP-Posting-Host: rrsoftware.com X-Trace: franka.jacob-sparre.dk 1482358370 2581 24.196.82.226 (21 Dec 2016 22:12:50 GMT) X-Complaints-To: news@jacob-sparre.dk NNTP-Posting-Date: Wed, 21 Dec 2016 22:12:50 +0000 (UTC) X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2900.5931 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.6157 X-RFC2646: Format=Flowed; Original Xref: news.eternal-september.org comp.lang.ada:32940 Date: 2016-12-21T16:12:49-06:00 List-Id: "Dmitry A. Kazakov" wrote in message news:o3erdj$169p$1@gioia.aioe.org... ... > When predicate is not a complete function of the argument, e.g. > > P (x) = (Integer (Clock - Epoch) mod 2) = 1 Complete straw man -- this isn't legal for a static predicate, which is the case in question. It's legal for a dynamic predicate, but that's just an assertion, no more, no less, and not the topic of this thread in any case. Static and dynamic predicates are completely different things, especially in terms of the reasoning that you can apply to them. I think it's evil that GNAT allows confusing them by just calling the thing a "predicate", on top of which that it is not portable. Randy.