Why Dijkstra suggested Premature-Loop-Exit Prohibition
blog.plover.com
blog.plover.com
http://frama-c.cea.fr/jessie_tutorial_index.html
Presumably exceptions were not a standard feature in programming languages when Dijkstra made his comment about premature-loop-exits. The "break;" C construct is only a restricted form of exception and exceptions are much better understood now than then. Verifying a program that uses them is no more difficult than verifying a program that doesn't.
Pascal Cuoq
Some examples are http://news.ycombinator.com/item?id=477177 or http://www.catonmat.net/blog/edsger-dijkstra-discipline-in-t..., both the article and the comments. I could go on.
And I would bet that if you watch this space you will see more of the same.
I cannot imagine that somebody with at least rudimentary education in CS would concur with such a judgement.
I however miss the argument a bit, as i can imagine a mechanical transform that can turn the premature exit version into one without. (using if statements to remove all operations until the end of the loop)
I have put some example rules to introduce exceptions in Hoare logic at http://snipt.org/lWg (I needed monospaced fonts, sorry for the inconvenience)
Still, this submission is getting the attention it deserves, the other did not :-(