comp.lang.ada
 help / color / mirror / Atom feed
From: "Warren W. Gay VE3WWG" <ve3wwg@cogeco.ca>
Subject: Re: Order of logical operations
Date: Mon, 07 Jun 2004 13:00:20 -0400
Date: 2004-06-07T13:00:20-04:00	[thread overview]
Message-ID: <D91xc.7620$8k4.275236@news20.bellglobal.com> (raw)
In-Reply-To: <2ic6o2Flfo94U1@uni-berlin.de>

Nick Roberts wrote:

> "Ed Falis" <falis@verizon.net> wrote in message
> news:opr8255wqr5afhvo@garuda.mshome.net...
>>On Fri, 04 Jun 2004 18:40:53 GMT, James Van Buskirk
>>
>>>I am curious
>>>as to how useful short-circuiting logical operators are
>>>considered to be in languages such as Ada that have both
>>>short-circuiting and non-short-circuiting operators.
>>
>>The short-circuit forms in Ada are considered to be very
>>useful for structural analysis of code during safety
>>certification (multiple condition, multiple decision analysis).
>>This is because sequentialization of the conditions reduces
>>the number of tests that would be necessary compared to
>>the simultaneous forms, where all combinations of
>>conditions would need to be exercised.
>>
>>Aside from that, I personally don't have a strong feeling
>>about the relative merits, excepting some potential
>>performance gains.
> 
> 
> Surely it's quite handy to be able to write things like the following?
> 
>    A: array (1..10) of Boolean;
>    ...
>    while i > 0 and then A(i) loop
>       ...

I find it handy for access types (for the FORTRAN folks,
the use of pointers):

if P /= null and then P.Member <= 23 then
    ...

If this were not short-circuited the P.Member access
would be problematic when P was null.
-- 
Warren W. Gay VE3WWG
http://home.cogeco.ca/~ve3wwg




  reply	other threads:[~2004-06-07 17:00 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <slrncbtfkn.247.tconnors@tellurium.ssi.swin.edu.au>
     [not found] ` <m11xkwd6ct.fsf@macfortran.local>
     [not found]   ` <slrn-0.9.7.4-31741-29330-200406040800-tc@hexane.ssi.swin.edu.au>
     [not found]     ` <40C0208A.80DBE53A@wldelft.nl>
2004-06-04 18:40       ` Order of logical operations James Van Buskirk
2004-06-04 20:06         ` Ed Falis
2004-06-04 21:09           ` Nick Roberts
2004-06-07 17:00             ` Warren W. Gay VE3WWG [this message]
2004-06-07 17:36               ` Ed Falis
2004-06-04 21:37         ` Björn Persson
2004-06-05 10:44         ` Dmitry A. Kazakov
replies disabled

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