[Python-Dev] Informal educator feedback on PEP 572 (was Re: 2018 Python Language Summit coverage, last part)
On 26.06.2018 0:13, Steve Holden wrote:
> On Mon, Jun 25, 2018 at 8:37 PM, Terry Reedy <tjreedy at udel.edu
> <mailto:tjreedy at udel.edu>> wrote:
> On 6/24/2018 7:25 PM, Guido van Rossum wrote:
> I'd wager that the people who might be most horrified about it
> the (b) scoping rule change
> would be people who feel strongly that the change to the
> comprehension scope rules in Python 3 is a big improvement,
> I might not be one of those 'most horrified' by (b), but I
> increasingly don't like it, and I was at best -0 on the
> comprehension scope change. To me, iteration variable assignment
> in the current scope is a non-problem.? So to me the change was
> mostly useless churn.? Little benefit, little harm.? And not worth
> fighting when others saw a benefit.
> However, having made the change to nested scopes, I think we
> should stick with them.? Or repeal them.? (I believe there is
> another way to isolate iteration names -- see below).? To me, (b)
> amounts to half repealing the nested scope change, making
> comprehensions half-fowl, half-fish chimeras.
> Terry Jan Reedy
> ?I'd like to ask: how many readers of ?
> ?this email have ever deliberately taken advantage of the limited
> Python 3 scope in comprehensions and generator expressions to use what
> would otherwise be a conflicting local variable name??
for l in (l.rstrip() for l in f):
The provisional unstripped line variable is totally unneeded in the
> I appreciate that the scope limitation can sidestep accidental naming
> errors, which is a good thing.
> Unfortunately, unless we anticipate Python 4 (or whatever) also making
> for loops have an implicit scope, I am left wondering whether it's not
> too large a price to pay. After all, special cases aren't special
> enough to break the rules, and unless the language is headed towards
> implicit scope for all uses of "for" one could argue that the scope
> limitation is a special case too far. It certainly threatens to be yet
> another confusion for learners, and while that isn't the only
> consideration, it should be given due weight.
> Python-Dev mailing list
> Python-Dev at python.org
> Unsubscribe: https://mail.python.org/mailman/options/python-dev/vano%40mail.mipt.ru
-------------- next part --------------
An HTML attachment was scrubbed...