[Python-ideas] Retrying EAFP without DRY
mwm at mired.org
Tue Jan 24 05:44:27 CET 2012
"Stephen J. Turnbull" <stephen at xemacs.org> wrote:
>Jim Jewett writes:
> > So it doesn't seem like a loop because you hope to do it only once?
>With s/hope/expect/, that hits the nail on the head.
>I don't think syntax can express that cleanly, but I can't help
>thinking it's of good thing if somebody like Mike tries to find a way.
Right. Doing it more than once is an exceptional case. And is more exceptional every time through.
That using an LBYL idiom, or simply repeating yourself, means you don't need a loop says to me that it isn't really a loop. Which is why using loop to write it feels wrong.
That I translated into a loop was because the only tools Python has for this is a loop. That no more makes it a loop than map being a function call makes it not a loop.
I'd say that using retry to write what really is a loop (ie - you can't know a maximum number of iterations at compile time) would constitute abuse. A very attractive abuse, at that. Which certainly counts against out.
>He might succeed!
Or someone else will figure it out after I've correctly described the problem.
Sent from my Android tablet with K-9 Mail. Please excuse my brevity.
More information about the Python-ideas