
19 Jul
2011
19 Jul
'11
5:44 a.m.
On Tue, 2011-07-19 at 10:43 +0200, Yves Parès wrote:
I haven't followed the thread carefully but why does the bird have to be a penguin?
A bird doesn't have to be a penguin :
instance (Penguin b) => Bird b where fly = -- fly method for penguins
Says that every Penguin is a Bird. But thinking back about it, there is a problem when trying to define the method walk, because:
class Penguin p where walkPenguin :: ....
instance (Penguin b) => Bird b where fly = ..... walk = walkPenguin
is kind of awful, because walk has to be duplicated. So, not the best way to go...
Note to self: don't respond to ml after 2am. I saw instance but read class. Regards