On Tue, Jan 04, 2005, Jim Fulton wrote:
Guido van Rossum wrote:
and the overloading of unbound and bound methods on the same object type is confusing. Also, the type checking offered is wrong, because it checks for subclassing rather than for duck typing.
"If it looks like a duck and quacks like a duck, it must be a duck."
Python is often referred to as having duck typing because even without formal interface declarations, good practice mostly depends on conformant interfaces rather than subclassing to determine an object's type.