[me] > > Paul Prescod wrote: > > > > I don't have a PEP number for this yet but I wanted to go through > > another round of comments after changing the mechanism according to Don > > Beaudry's suggestions. > > ... > > Paul, this is clearly unclear <0.1 wink>. Thanks (Paul, Don, Gordon) for clarifying this pre-PEP. As I see it, this aims at providing builtin support for the following (simplified & quickly hacked) __getattr__ version: def new_getattr(self, name, rec=0): hookname = "__get_%s__" % name if not rec and hasattr(self, hookname): hook = new_getattr(self, hookname, rec=1) return hook(self) # builtin __getattr__ follows ... if self.__dict__.has_key(name): return self.__dict__[name] if self.__class__.__dict__.has_key(name): return self.__class__.__dict__[name] # ... return class_lookup(self, name) raise AttributeError, name class C: def __get_hi__(self): return "coucou" def __getattr__(self, name): return new_getattr(self, name) >>> c = C() >>> c.hi "coucou" and its setattr, delattr counterparts. But people are already massively using __getattr__ as method dispatchers, so as I understand it, this is not just about "Attribute Access Handlers". You're looking for a "Normative Naming Scheme and Builtin Support for Attribute Access Handlers", no more, no less. Okay, so make this clear in the PEP. The presented scenarios don't make this clear, IMO. I asked myself what's the enhancement here... Also, it would be useful if you could include a Python implementation of the concept, stating explicitely where the existing functionality ends, and where the proposed enhancement starts, so that people can play with it. -- Vladimir MARANGOZOV | Vladimir.Marangozov@inrialpes.fr http://sirac.inrialpes.fr/~marangoz | tel:(+33-4)76615277 fax:76615252
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4