duck typing definition programming
A term coined by Dave Thomas for a kind of dynamic typing
typical of some programming languages, such as Smalltalk
or Visual FoxPro
, where a variable
value determines the operations that can be performed on it.
The term comes from the "duck test": if it walks like a duck and quacks like a duck, it must be a duck.
Duck typing considers the methods
to which a value responds and the attributes
it posesses rather than its relationship to a type hierarchy. This encourages greater polymorphism
because types are enforced as late as possible.