<div><div><font face="arial, helvetica, sans-serif"><br></font></div><div class="gmail_quote">On Fri, Jan 20, 2012 at 4:36 PM, Mike Meyer <span dir="ltr"><<a href="mailto:mwm@mired.org">mwm@mired.org</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">A single new keyword/clause, "retry". It has the same syntax as an<br>
"except" clause, can be used anywhere "except" can be used, and can be<br>
intermingled with them in the same try statement. There's probably a<br>
better syntax, but this is easy to describe.<br>
<br>
The behavior change from except is that instead of exiting the "try"<br>
statement when the "retry" clause ends, it restarts the try<br>
clause. In python, this code:<br>
<br>
    try:<br>
        # try block<br>
    except:<br>
        # except block<br>
    retry:<br>
        # retry block<br>
    else:<br>
        # else block<br>
    finally:<br>
        # finally block<br></blockquote><div><br></div><div>Can you write this in terms of current Python code? I don't understand exactly when a retry block would be executed. In Eiffel, retry is a statement, not a clause. Analogous to that would be:</div>

<div><br></div><div>try:</div><div>    # block</div><div>except:</div><div>    # block</div><div>    if condition: retry</div><div><br></div><div>The equivalent of this in current Python is</div><div><br></div><div>while True:</div>

<div>    try:</div><div>        # block</div><div>    except:</div><div>        # block</div><div>        if condition: continue # retry</div><div>    break</div><div><br></div><div>FWIW, if this turns out to be a good idea, an alternate spelling that would not require a new keyword is 'try again'.</div>

<div><br></div><div><font face="arial, helvetica, sans-serif">--- Bruce</font><div><font face="arial, helvetica, sans-serif">Follow me: <a href="http://www.twitter.com/Vroo" target="_blank">http://www.twitter.com/Vroo</a> <a href="http://www.vroospeak.com/" target="_blank">http://www.vroospeak.com</a></font></div>

</div><div><br></div></div></div>