From: | 1Z <pdjpurchase@googlemail.com> |
Newsgroups: | comp.compilers |
Date: | Sun, 13 Feb 2011 07:43:00 -0800 (PST) |
Organization: | Compilers Central |
References: | 11-01-043 |
Keywords: | syntax, design |
Posted-Date: | 17 Feb 2011 01:28:31 EST |
On Jan 13, 6:09 pm, noitalmost <noitalm...@cox.net> wrote:
> I've noticed that Wirth has continually rejected the idea of a break
> statement and I was wonder why. Is this purely philosophical, or are
> there code optimization reasons? Naive code for a break is trivial to
> implement.
>
> Is it easier to optimize loops with no break? That is, is the cost of
> having extra booleans to control the loop less than the cost of
> messing up the basic blocks with break?
> [It's a little easy to optimize single-exit loops, but my impression is
> that the motivation was more like salvation through suffering. -John]
A compromise would be to allow only one "middle exit" per loop, and
to have it clearly indicated in the syntax rather than looking like
any old statement.
do{
resource= getResource(counter);
}
exitwhen (resource.isOk());
{
releaseResource(resource);
counter.increment();
}
[It's been done, but never caught on that I could see. -John]
Return to the
comp.compilers page.
Search the
comp.compilers archives again.