[Python-Dev] Scoping vs augmented assignment vs sets (Re: 'fast locals' in Python 2.5)
Terry Reedy
tjreedy at udel.edu
Tue Jun 13 19:48:24 CEST 2006
More information about the Python-Dev mailing list
Tue Jun 13 19:48:24 CEST 2006
- Previous message: [Python-Dev] Scoping vs augmented assignment vs sets (Re: 'fast locals' in Python 2.5)
- Next message: [Python-Dev] Scoping vs augmented assignment vs sets (Re: 'fast locals' in Python 2.5)
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
"Boris Borcic" <bborcic at gmail.com> wrote in message news:e6mcfg$iao$1 at sea.gmane.org... >being transformed to profit from simplifications I expected sets to allow. >There, itemwise augmented assigments in loops very naturally transform to >wholesale augmented assignments without loops. Except for this wart. Your transformation amounted to switching from collection mutation to object rebinding. In Python, that is a crucial difference. That the mutation and rebinding were both done with augmented assignments is not terribly important except as this masks the difference. When *you* read your code, you know that you will only call the inner function with a mutable collection object, so you know that the name will be rebound to the same object after mutation, so you can think of the augmented assignment as being the same as collection mutation. But the compiler does not know any such thing about the target of the augmented assignment and must therefore treat the statement as an assigment. It was a bug for a2 to do otherwise, even though the bug was locally optimal for this particular usage. Terry Jan Reedy
- Previous message: [Python-Dev] Scoping vs augmented assignment vs sets (Re: 'fast locals' in Python 2.5)
- Next message: [Python-Dev] Scoping vs augmented assignment vs sets (Re: 'fast locals' in Python 2.5)
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the Python-Dev mailing list