On 09/08/2017 12:44 PM, Larry Hastings wrote:
I've updated PEP 549 with a new title--"Instance Descriptors" is a better name than "Instance Properties"--and to clarify my rationale for the PEP. I've also updated the prototype with code cleanups and a new type: "collections.abc.InstanceDescriptor", a base class that allows user classes to be instance descriptors.
I like the new title, I'm +0 on the PEP itself, and I have one correction for the PEP: we've had the ability to simulate module properties for ages:
Python 2.7.6 (default, Oct 26 2016, 20:32:47) [GCC 4.8.4] on linux2 Type "help", "copyright", "credits" or "license" for more information. --> import module_class --> module_class.hello 'hello' --> module_class.hello = 'hola' --> module_class.hello 'hola' And the code: class ModuleClass(object): @property def hello(self): try: return self._greeting except AttributeError: return 'hello' @hello.setter def hello(self, value): self._greeting = value import sys sys.modules[__name__] = ModuleClass() I will admit I don't see what reassigning the __class__ attribute on a module did for us. -- ~Ethan~ _______________________________________________ Python-Dev mailing list Python-Dev@python.org https://mail.python.org/mailman/listinfo/python-dev Unsubscribe: https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com