From: Shark8 <onewingedshark@gmail.com>
Subject: Re: if-then-no-else Programming
Date: Tue, 19 Apr 2016 15:40:38 -0700 (PDT)
Date: 2016-04-19T15:40:38-07:00 [thread overview]
Message-ID: <8328e4e6-97b7-49b6-92de-9f60181dc563@googlegroups.com> (raw)
In-Reply-To: <nf6279$5r1$1@loke.gir.dk>
On Tuesday, April 19, 2016 at 1:51:07 PM UTC-6, Randy Brukardt wrote:
>
> Indeed, RRS has a style rule which is the exact opposite of his suggestion.
> We require either an else or a comment that no else is needed for most if
> statements. We found that we had cases like:
>
> if condition then
> Do_Something;
> end if;
>
> and there would be a bug because nothing was done if condition was False.
> Errors of omission are the hardest things to find, and we hoped to reduce
> the number of them by at least requiring the programmer to think about all
> of the possibilities and documenting that they did so. Thus, the above would
> have to be written:
>
> if condition then
> Do_Something;
> -- else nothing needed.
> end if;
>
> so it's obvious that the reverse condition was considered.
But we can do this natively in Ada:
if condition then
Do_Something;
else
null; -- Nothing needed.
end if;
I would think that there would be zero difference in code generation between that and w/o the else.
next prev parent reply other threads:[~2016-04-19 22:40 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-04-19 2:24 if-then-no-else Programming Charles H. Sampson
2016-04-19 3:08 ` Dennis Lee Bieber
2016-04-19 3:19 ` Jeffrey R. Carter
2016-04-19 6:18 ` Nasser M. Abbasi
2016-04-19 7:55 ` Dmitry A. Kazakov
2016-04-19 12:17 ` G.B.
2016-04-20 22:26 ` Martin
2016-04-19 13:27 ` gautier_niouzes
2016-04-19 19:51 ` Randy Brukardt
2016-04-19 22:40 ` Shark8 [this message]
2016-04-20 22:35 ` Randy Brukardt
2016-04-20 7:56 ` Charles H. Sampson
2016-04-20 11:26 ` Dennis Lee Bieber
2016-04-20 12:32 ` G.B.
2016-04-20 12:36 ` G.B.
2016-04-20 23:07 ` Jeffrey R. Carter
2016-04-19 20:32 ` Charles H. Sampson
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox