From: "Mills Thomas (app1tam)" Date: 2003-08-09T00:33:17+09:00 Subject: Re: Ducktype, right? > -----Original Message----- > From: dblack@superlink.net [mailto:dblack@superlink.net] > Sent: Friday, August 08, 2003 11:00 AM > To: ruby-talk@ruby-lang.org > Subject: Re: Ducktype, right? > > > > > ### in Ruby > > yourRobot.quack if ducktype(yourRobot, duckness) > > duckHerder.buy(myRobot) if ducktype(myRobot, duckness) > > (I'm not sure I'd file the second example under "duck typing" > (since it's argument-checking rather than object capability > checking), but you could probably come up with a method name > that was a superset of both :-) > I guess I'm not sure what duck typing is, then. My example was assuming I was using the original method from my first post. Thus, duckness is a list of ducky methods. My second example was selling myRobot to a duckHerder since, for all intents and purposes, myRobot acts like a duck. The duckHerder would also consider myRobot to be a duck, assuming we agreed on duckness. I thought that was duck-typing. Drew