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=-0.3 required=5.0 tests=BAYES_00, REPLYTO_WITHOUT_TO_CC autolearn=no autolearn_force=no version=3.4.4 X-Google-Thread: 103376,5188f16fad7607fb X-Google-NewGroupId: yes X-Google-Attributes: gida07f3367d7,domainid0,public,usenet X-Google-Language: ENGLISH,ASCII-7-bit Received: by 10.66.89.164 with SMTP id bp4mr3190109pab.14.1349719641908; Mon, 08 Oct 2012 11:07:21 -0700 (PDT) Path: t10ni23657056pbh.0!nntp.google.com!news.glorb.com!aioe.org!.POSTED!not-for-mail From: "Dmitry A. Kazakov" Newsgroups: comp.lang.ada Subject: Re: choice_expression Date: Mon, 8 Oct 2012 20:07:20 +0200 Organization: cbb software GmbH Message-ID: References: <8ca46b0e-355e-4f77-a727-5c4846f98474@googlegroups.com> <7125edff-7211-4bef-a6ea-5bfab84ccf9a@googlegroups.com> Reply-To: mailbox@dmitry-kazakov.de NNTP-Posting-Host: 9A8bJrx4NhDLcSmbrb6AdA.user.speranza.aioe.org Mime-Version: 1.0 X-Complaints-To: abuse@aioe.org User-Agent: 40tude_Dialog/2.0.15.1 X-Notice: Filtered by postfilter v. 0.8.2 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Date: 2012-10-08T20:07:20+02:00 List-Id: On Mon, 8 Oct 2012 10:01:46 -0700 (PDT), Adam Beneschan wrote: > But > here's a case (no less obscure than the examples you're providing) that > isn't obvious: > > A and B in SOMETHING > > where A and B are Booleans and SOMETHING is a subtype of Boolean or > something like Array'Range where the array index type is Boolean. Is this > > (A and B) in SOMETHING > > or > > A and (B in SOMETHING) ? not A in B may mean either (not A) in B or not (A in B) -- I think this is what Ada syntax does Lattice operations are ambiguous. In mathematics they use different notation for the operations Ada conflates. E.g. logical V vs. union U (like in modular types). Both are denoted as "or" in Ada. It also uses | for U in other cases. The membership test is conflated with the subset test and with the subsumption test. All are just "in." This might impose problems once ranges and tests become proper operations. > But it's incorrect to say that Ada 83 avoided the problem of users having > to guess precedence. Ada found a way to solve the problem. -- Regards, Dmitry A. Kazakov http://www.dmitry-kazakov.de