I am having some trouble wrapping my head around it. Reading through
rpython/tools/pairtype.py, it looks like it could be one or more of a
number of things:

- An implementation of javascript-style prototypes. (The similarity: you
don't subclass an object in js - you use the base object as a prototype and
extend it with new functionality)

- A way to do specialization and automatic dispatching on types so that a+b
works (both "a" and "b" know what they are, and whether they are compatible
with each other in an __add__/__radd__ sense, and what type should be
returned as a result of that call)

- Sort of a first draft of ABCs, allowing composition and type buildup
without explicit inheritance (roughly, __extend__ is similar to
ABC.register)

- Other?

Thanks,
Van
_______________________________________________
pypy-dev mailing list
pypy-dev@python.org
https://mail.python.org/mailman/listinfo/pypy-dev

Reply via email to