[Python-Dev] advice needed: best approach to enabling "metamodules"?
Brett Cannon
brett at python.org
Sun Nov 30 20:27:48 CET 2014
On Sun Nov 30 2014 at 2:16:18 PM Guido van Rossum <guido at python.org> wrote:
> On Sun, Nov 30, 2014 at 6:15 AM, Brett Cannon <brett at python.org> wrote:
>>
>> On Sat, Nov 29, 2014, 21:55 Guido van Rossum <guido at python.org> 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.
>
You're right. My brain was thinking __getattribute__ semantics for some
reason.
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-dev/attachments/20141130/8a23ec4b/attachment.html>
More information about the Python-Dev
mailing list