[Python-Dev] advice needed: best approach to enabling "metamodules"?

Terry Reedy tjreedy at udel.edu
Mon Dec 1 00:41:52 CET 2014


On 11/30/2014 2:27 PM, Ethan Furman wrote:
> On 11/30/2014 11:15 AM, Guido van Rossum wrote:
>> On Sun, Nov 30, 2014 at 6:15 AM, Brett Cannon wrote:
>>> On Sat, Nov 29, 2014, 21:55 Guido van Rossum wrote:
>>>>
>>>> All the use cases seem to be about adding some kind of getattr hook
>>>> to modules. They all seem to involve modifying the CPython C code
>>>> anyway. So why not tackle that problem head-on and modify module_getattro()
>>>> to look for a global named __getattr__ and if it exists, call that instead
>>>> of raising AttributeError?
>>>
>>> Not sure if anyone thought of it. :) Seems like a reasonable solution to me.
>>> Be curious to know what the benchmark suite said the impact was.
>>
>> Why would there be any impact? The __getattr__ hook would be similar to the
>> one on classes -- it's only invoked at the point where otherwise AttributeError
>> would be raised.
>
> I think the bigger question is how do we support it back on 2.7?

I do not understand this question. We don't add new features to 2.7 and 
this definitely is one.

-- 
Terry Jan Reedy



More information about the Python-Dev mailing list