[Python-Dev] Release of astoptimizer 0.3

Serhiy Storchaka storchaka at gmail.com
Wed Sep 12 09:55:38 CEST 2012


On 12.09.12 00:47, Victor Stinner wrote:
>> x = x + [y] => x.append(y)
>> x = x + [y, z] => x.extend([y, z])
>> It behaves differently if x is not a list, but str for example.

Actually even worse. Transformations applicable only if x has not 
aliases. Pseudocode:
 if type(x) is list and refcount(x) == 1:
 list.append(x, y)
 else:
 x = x + [y]
This optimization can be done only in the interpreter, otherwise 
overhead costs will be too high.


More information about the Python-Dev mailing list

AltStyle によって変換されたページ (->オリジナル) /