[Python-Dev] Removing surplus fields from the frame object and not adding any new ones.
Guido van Rossum
guido at python.org
Mon Apr 9 18:20:02 CEST 2012
On Mon, Apr 9, 2012 at 8:17 AM, Mark Shannon <mark at hotpy.org> wrote:
> Guido van Rossum wrote:
>>
>> On Mon, Apr 9, 2012 at 3:51 AM, Mark Shannon <mark at hotpy.org> wrote:
>>>
>>> f_namespaces would be part of the frame, replacing f_builtins, f_globals
>>> and f_locals. The indirection of an external object hurts performance,
>>> so it would have to be a struct within the frame. The aim is clarity;
>>> locals, globals and builtins form a trio, so should be implemented as
>>> such.
>>
>>
>> How does replacing three fields with a struct containing three fields
>> reduce the size of the frame or the overhead in creating it?
>>
>
> It doesn't.
> I think it would improve clarity, but I doubt it is worth the effort.
>
> The point I really wanted to make is that many of the fields in the
> frame object belong elsewhere and adding new fields to the frame object
> is generally a bad idea.
But is it? Consider the 'finally' proposal (not that I endorse it!) --
where would they put this info?
And what is the cost really? Have you measured it? Or are you just
optimizing prematurely?
--
--Guido van Rossum (python.org/~guido)
More information about the Python-Dev
mailing list