comp.lang.ada
 help / color / mirror / Atom feed
From: Maxim Reznik <reznikmm@gmail.com>
Subject: choice_expression
Date: Mon, 8 Oct 2012 06:34:27 -0700 (PDT)
Date: 2012-10-08T06:34:27-07:00	[thread overview]
Message-ID: <fef64fac-6db4-4246-87e7-5fb27493cce8@googlegroups.com> (raw)

Hi, all

I wounder why Ada 2012 membership test syntax is so complicated?

membership_choice ::= choice_expression | ...

What for choice_expression is?

I doubt someone is able to interprete this Ada 2012 expression:

"False in False and False"

BTW GNAT understands it as "(False in False) and False"

Then, when you start adding '<', '|' expression became even more complicated:

For example
 "False in False and False | True" 

interpreted as

 "False in (False and False) | True"

I mean allowing relational and ligical operators in choice_expression makes syntax unclear, ambiguous and error-prone.

Why not just 

membership_choice ::= simple_expression | ...

and force user to write brackets around expression?



             reply	other threads:[~2012-10-08 13:34 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-10-08 13:34 Maxim Reznik [this message]
2012-10-08 14:49 ` choice_expression Adam Beneschan
2012-10-08 15:44   ` choice_expression Maxim Reznik
2012-10-08 17:01     ` choice_expression Adam Beneschan
2012-10-08 18:07       ` choice_expression Dmitry A. Kazakov
2012-10-18 21:12     ` choice_expression Randy Brukardt
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox