Andrew Koenig wrote:
> In other words, whether or not we choose to define a family of types that
> stand for particular abilities, I think we should not use inheritance as the
> mechanism for specifying that a particular class has a particular ability.
> I don't know what the mechanism should be, but it shouldn't be inheritance.
> 
> Am I missing something?

It seems to me to be an excellent write-up of why using concrete classes for 
interface definitions is potentially problematic. (Although I will point out 
that most  protocols for things like len() *do* involve checks for special 
methods by name, and the check for iterability is typically a non-destructive 
call to iter(x), rather than a destructive one to x.next()).

To make multiple dispatch practical, I suspect we will end up with something 
more along of the lines of Zope.interface to 'formalise' Python interface 
definitions.

Cheers,
Nick.

-- 
Nick Coghlan   |   [EMAIL PROTECTED]   |   Brisbane, Australia
---------------------------------------------------------------
             http://www.boredomandlaziness.org
_______________________________________________
Python-3000 mailing list
Python-3000@python.org
http://mail.python.org/mailman/listinfo/python-3000
Unsubscribe: 
http://mail.python.org/mailman/options/python-3000/archive%40mail-archive.com

Reply via email to