[Python-Dev] Update on PEP 523 and adding a co_extra field to code objects

Serhiy Storchaka storchaka at gmail.com
Tue Aug 30 14:55:16 EDT 2016


On 30.08.16 21:20, Antoine Pitrou wrote:
> On Tue, 30 Aug 2016 18:12:01 +0000
> Brett Cannon <brett at python.org> wrote:
>>> Why not make it always a list?  List objects are reasonably cheap in
>>> memory and access time... (unlike dicts)
>>
>> Because I would prefer to avoid any form of unnecessary performance
>> overhead for the common case.
>
> But the performance overhead of iterating over a 1-element list
> is small enough (it's just an array access after a pointer dereference)
> that it may not be larger than the overhead of the multiple tests and
> conditional branches your example shows.

Iterating over a tuple is even faster. It needs one pointer dereference 
less.

And for memory efficiency we can use just a raw array of pointers.




More information about the Python-Dev mailing list