[Python-Dev] Re: anonymous blocks
Skip Montanaro
skip at pobox.com
Mon Apr 25 15:11:16 CEST 2005
Guido> At the same time, having to use it as follows:
Guido> for f in with_file(filename):
Guido> for line in f:
Guido> print process(line)
Guido> is really ugly, so we need new syntax, which also helps with
Guido> keeping 'for' semantically backwards compatible. So let's use
Guido> 'with', and then the using code becomes again this:
Guido> with f = with_file(filename):
Guido> for line in f:
Guido> print process(line)
How about deferring major new syntax changes until Py3K when the grammar and
semantic options might be more numerous? Given the constraints of backwards
compatibility, adding more syntax or shoehorning new semantics into what's
an increasingly crowded space seems to always result in an unsatisfying
compromise.
Guido> Now let me propose a strawman for the translation of the latter
Guido> into existing semantics. Let's take the generic case:
Guido> with VAR = EXPR:
Guido> BODY
What about a multi-variable case? Will you have to introduce a new level of
indentation for each 'with' var?
Skip
More information about the Python-Dev
mailing list