Research and Advances

Multiple exits from a loop without the GOTO

For several years, there has been discussion about the use of the goto statement in programming languages [1, 2]. It has been pointed out that goto free programs tend to be easier to understand, allow better optimization by the compiler, and are better suited for an eventual proof of correctness. On the other hand, the goto statement is a flexible tool for many programmers. Most programming languages have constructs which allow the programmer to write control flows that occur frequently without the use of a goto. In particular, the language Pascal [3] contains, besides the goto, the following control structures: if-then-else, case, while-do, repeat-until, stepping loop. Wulf [4] has described the use of the construct “leave &lpargt;label⦔” in the language Bliss, where &lpargt;label⦔ is the name of a program section which is exited when the statement is executed. It is important to note that these constructs are invented to describe control flows that occur frequently in programs. They describe the flow on a higher level [5] than an equivalent construction using a goto would do.

Advertisement

Author Archives

Shape the Future of Computing

ACM encourages its members to take a direct hand in shaping the future of the association. There are more ways than ever to get involved.

Get Involved