3 ms·
This makes sense to me - it feels like an interface somewhere in the space of Python's properties (using the @property decorator), its descriptor protocol[0] wi
by haikuginger 8y ago
This makes sense to me - it feels like an interface somewhere in the space of Python's properties (using the @property decorator), its descriptor protocol[0] with which properties are implemented, and its system of magic methods like __getattr__ and __getattribute__.
I am a bit intrigued about the way it's separated from the "nature" of the underlying Object though - in Python, we'd have a single canonical interface to the data, bound to the class in which the data was instantiated. Here, in ES6, it seems like the data might be attached to a base Object, and you could use that Object with any number of different proxies to provide polymorphic behavior.
Overall, these seem like very different philosophies of object-oriented programming. Which I guess makes sense given how the languages have evolved over time.
[0] https://docs.python.org/3/howto/descriptor.html https://docs.python.org/3/howto/descriptor.html