comp.lang.ada
 help / color / mirror / Atom feed
From: sampson@cod.nosc.mil  (Charles H. Sampson)
Subject: Re: and then
Date: 7 Apr 93 16:21:33 GMT	[thread overview]
Message-ID: <1993Apr7.162133.3564@nosc.mil> (raw)

In article <19930406.143008.278@almaden.ibm.com> jnestoriak@vnet.IBM.COM writes
:
>At a recent code inspection, someone suggested that I convert a
>series of and's to and then's "for performance".  I expect that
>90+% of the time all the conditions will be true anyway.  But is
>it really true that and then will get better performance than
>and?  I realize this is probably a compiler dependant question.
>Also, I question the value of doing such a thing styllistically.
>Any opinions?

     My style is to use the boolean operators generally, reserving the
short-circuit forms to document that the second operand should not be eval-
uated under some circumstances.

     Unfortunately, that style can conflict with efficiency considerations. 
Ada compiler writers appear to have abdicated their responsibility and make
no attempt to determine when boolean operations can be optimized as short-
circuit.  (Somebody contradict me, please.)  They apparently feel that if
the programmer wants short-circuit he can ask for it.  In addition, there
are cases when it is unreasonable to expect such an optimization; when the
second operand contains a function reference, for example.

     That said, I still use my style when coding and look for bottlenecks
during testing if performance is poor.  If efficiency requires that I use
an unnecessary short-circuit form, I document that fact in the code.

                                   Charlie

             reply	other threads:[~1993-04-07 16:21 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1993-04-07 16:21 Charles H. Sampson [this message]
  -- strict thread matches above, loose matches on Subject: below --
1993-04-12 18:38 and then Charles H. Sampson
1993-04-12 13:29 cis.ohio-state.edu!zaphod.mps.ohio-state.edu!howland.reston.ans.net!noc.n
1993-04-11  3:55 Michael Feldman
1993-04-10 19:52 Alex Blakemore
1993-04-10 15:43 Dik T. Winter
1993-04-10 15:36 Dik T. Winter
1993-04-10  9:39 munnari.oz.au!yoyo.aarnet.edu.au!news.adelaide.edu.au!usenet
1993-04-10  1:03 Charles H. Sampson
1993-04-09 18:08 Dave Bashford
1993-04-09 14:06 Dan Rittersdorf
1993-04-08 22:35 Andrew Dunstan,,2285592,
1993-04-08 22:28 Alex Blakemore
1993-04-08 19:03 Art Duncan
1993-04-08 16:18 Charles H. Sampson
1993-04-08 15:34 Christopher J. Henrich
1993-04-08 12:21 enterpoop.mit.edu!usc!cs.utexas.edu!mars.tsd.arlut.utexas.edu!gardner
1993-04-07 22:58 Mark Lundquist
1993-04-07 21:07 Ray Harwood -- Data Basix: (602)721-1988
1993-04-07 12:42 Robert Firth
replies disabled

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