Terry J. Reedy added the comment:

Today in pydev thread "chained assignment weirdity" Guido said
"I agree that we should be *very* conservative in changing the
meaning of existing opcodes (adding new one is a different story)."
"Hm. I really don't think that is a good development for Python to
compromise in the area of expression evaluation order where side
effects are involved."

"I haven't looked at the proposed fixes, but I think correctness is more 
important than saving an extra bytecode (OTOH keeping the set of opcodes the 
same trumps both). I can't imagine that this extra opcode will be significant 
in many cases."

To which Nick C. replied
"Since you've indicated the implementation is in the wrong here and you
also want to preserve opcode semantics, I think Skip's patch is
correct, but also needs to be applied to dict comprehensions (now we
have them). The extra bytecode is only ROT_TWO, which is one of the
cheapest we have kicking around."

To which Guido said "Ok, somebody go for it! (Also please refer to my 
pronouncement in the bug"


Python tracker <rep...@bugs.python.org>
Python-bugs-list mailing list

Reply via email to