Re: are there implementation reasons for not providing a break statement in an imperative language?

1Z <pdjpurchase@googlemail.com>
Sun, 13 Feb 2011 07:43:00 -0800 (PST)

          From comp.compilers

Related articles
[5 earlier articles]
Re: are there implementation reasons for not providing a break stateme Pidgeot18@verizon.net (Joshua Cranmer) (2011-01-16)
Re: are there implementation reasons for not providing a break stateme richard@cogsci.ed.ac.uk (2011-01-18)
Re: are there implementation reasons for not providing a break stateme fusionfile@gmail.com (August Karlstrom) (2011-01-18)
Re: are there implementation reasons for not providing a break stateme fusionfile@gmail.com (August Karlstrom) (2011-01-18)
Re: are there implementation reasons for not providing a break stateme richard@cogsci.ed.ac.uk (2011-01-19)
Re: are there implementation reasons for not providing a break stateme bc@freeuk.com (Bartc) (2011-01-20)
Re: are there implementation reasons for not providing a break stateme pdjpurchase@googlemail.com (1Z) (2011-02-13)
Re: are there implementation reasons for not providing a break stateme thomas.mertes@gmx.at (tm) (2011-02-17)
Re: are there implementation reasons for not providing a break stateme idbaxter@semdesigns.com (Ira Baxter) (2011-03-07)
Re: are there implementation reasons for not providing a break stateme gah@ugcs.caltech.edu (glen herrmannsfeldt) (2011-03-08)
Re: are there implementation reasons for not providing a break stateme robin51@dodo.com.au (robin) (2011-03-11)
| List of all articles for this month |

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]



Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.