On Thu, 6 Nov 2003 15:32:57 +0900 David Naseby <david.naseby / eonesolutions.com.au> wrote: <snip> > Then the 18th century rolls around, and the platypus emerges. Its certainly > not a Waterfowl, but it does have a bill and swims, and it would benefit > from your code. But it is blocked from using it. Your strong typing reduced > your codes benefit to a use you could not have *possibly* have predicted. <snip> A platypus is most certainly not a duck---it neither walks like a duck nor quacks like a duck. If you want it walking and quacking like a duck, then a platypus will not fit the bill. (*groans* ;) If you just want it to be a BilledAnimal, then make a BilledAnimal mixin, and give it to Duck and Platypus. Simple. -- Ryan Pavlik <rpav / mephle.com> "Do not question wizards, for they are quick to turn you into a toad." - 8BT