Duck typing er et prinsipp der et objekts egnethet bestemmes av hvilke metoder det responderer på, ikke klassen eller typen — "hvis det går som en and og kvekker som en and, er det en and." I Ruby bryr du deg om at et objekt kan gjøre noe (har metoden), ikke hva type det er. Dette gjør det mulig med fleksibel, polymorfi kode uten arv eller grensesnitt.
Prinsippet: oppførsel fremfor type
()
duck.quack
=
=
make_it_quack(.new)
make_it_quack(.new)
