[Python-3000] Implementations: A syntax for extending method dispatching beyond type/class inheritance (original) (raw)
Dave Anderson python3000 at davious.org
Mon Dec 4 03:43:29 CET 2006
- Previous message: [Python-3000] Implementations: A syntax for extending method dispatching beyond type/class inheritance
- Next message: [Python-3000] iostack and Oh Oh
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
I'd like to augment one of the sections to my previous post... was: An Implementation can be a combination of Classes and Class Methods
I meant to say: An Implementation can be a combination of Classes, Class Methods, and Other Implementations
An Implementation can be a combination of Classes, Class Methods, and Other Implementations
A_B_C_like = Implementation(A, B, C.f, C.g)
class D: implements A_B_C_like ...
def f(A_B_C_like_arg: A_B_C_like):
will dispatch D instances
...
implementations can be composed of other implementations
A_B = Implemenation(A, B)
A_B_C_like = Implementation(A_B, C.f, C.g)
informal implementation lists are also allowed
class D1: implements A, B, C.f, C.g ...
def f(A_B_C_like_arg: A, B, C.f, C.g):
will dispatch D and D1 instances
...
multiple implementation declarations are also allowed
class D2: implements A, B implements C.f, C.g
def f(A_B_C_like_arg: A, B, C.f, C.g):
will dispatch D, D1, and D2 instances
....
- Previous message: [Python-3000] Implementations: A syntax for extending method dispatching beyond type/class inheritance
- Next message: [Python-3000] iostack and Oh Oh
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]