Interesting talk on Python vs. Ruby and how he would like Python to have just a bit more syntactic flexibility.
Steven D'Aprano
steve at REMOVE-THIS-cybersource.com.au
Fri Feb 19 01:00:17 EST 2010
On Fri, 19 Feb 2010 18:52:20 +1300, Gregory Ewing wrote:
> The Ruby approach has the advantage of making it possible to implement
> user-defined control structures without requiring a macro facility. You
> can't do that in Python.
[...]
> Also, most people who advocate adding some form of block-passing
> facility to Python don't seem to have thought through what would happen
> if the block contains any break, continue, return or yield statements.
That is the only time I ever wanted blocks: I had a series of functions
containing for loops that looked something vaguely like this:
for x in sequence:
code_A
try:
something
except some_exception:
code_B
where code_B was different in each function, so I wanted to pull it out
as a code block and do this:
def common_loop(x, block):
code_A
try:
something
except some_exception:
block
for x in sequence:
common_loop(x, block)
The problem was that the blocks contained a continue statement, so I was
stymied.
--
Steven
More information about the Python-list
mailing list