Add duck-typing to the glossary.

This commit is contained in:
Raymond Hettinger 2005-01-11 16:11:13 +00:00
parent faa10ebdd0
commit d4f5b07e5d
1 changed files with 11 additions and 0 deletions

View File

@ -85,6 +85,17 @@ use of \class{dict} much resembles that for \class{list}, but the keys
can be any object with a \method{__hash__()} function, not just
integers starting from zero. Called a hash in Perl.
\index{duck-typing}
\item{duck-typing}
Pythonic programming style that determines an object's type by inspection
of its method or attribute signature rather than by explicit relationship
to some type object ("If it looks like a duck and quacks like a duck, it
must be a duck.") By emphasizing interfaces rather than specific types,
well-designed code improves its flexibility by allowing polymorphic
substitution. Duck-typing avoids tests using \function{type()} or
\function{isinstance()}. Instead, it typically employs
\function{hasattr()} tests or {}\emph{EAFP} programming.
\index{EAFP}
\item[EAFP]
Easier to ask for forgiveness than permission. This common Python