it's not duck typing, it's type checking
usage example screen shots
Merge remote-tracking branch 'github/master'