Missing interfaces in Python...

Alex Martelli aleaxit at yahoo.com
Wed Apr 19 10:23:34 EDT 2006


Ben <groups at theyoungfamily.co.uk> wrote:
   ...
> It seems to me that a lot of python projects reimplement interfaces or
> adaption of some kind once they reach a certain size (Zope, PEAK, eggs,
> TurboGears, etc), which implies that they really do have some benefits,
> particularly in documentation.

PEAK is an interesting counterexample, particularly since Philip Eby
tends to be "ahead of the curve": it appears that he's determined that
``generic functions'' (with ``multimethods'') are a superior approach,
and seems to have convinced Guido to the point that GFs are the
alternative being actively explored for Py3k.  I will admit that, while
still undecided, I'm halfway-convinced enough not to mourn for PEP 246.

((It's possible to implement protocols, a la PyProtocols and as
advocated in PEP 246, in terms of GFs, or viceversa; in PEAK, it's
GFs-in-terms-of-protocols for strictly historical reasons, but the
advantage along various axes seems to be to the
protocols-in-terms-of-GFs camp; since protocols are a strict superset of
interfaces...))

BTW, this _could_ be seen as yet another case of "reimplementing LISP",
since Lisp/CLOS was always based on GFs/multimethods...;-).


Alex



More information about the Python-list mailing list