[Haskell-cafe] Thoughts on Haskell and OOP
Colin Paul Adams
colin at colina.demon.co.uk
Fri Jan 2 01:39:02 EST 2009
>>>>> "Kevin" == Kevin Van Horn <kevin at ksvanhorn.com> writes:
Kevin> What do the rest of you think? Is my analysis correct?
No, because ...
Kevin> Properly used, OOP is all about interface inheritance, not
Kevin> implementation inheritance. (At least in C++,
Kevin> implementation inheritance -- inheriting the data members
Kevin> and method implementations of a base class -- usually leads
Kevin> to bad design, and is discouraged by the experts.)
But C++ isn't OOP. It's a bodge where OO stuff is added on top of
C. Naturally, this doesn't work out well. But that isn't necessarily
why C++ doesn't vdo implementation inheritance well.
Properly used, OOP is all about interface inheritance and
implementation inheritance, with contracts used to ensure semantically
correct behaviour.
See Eiffel.
--
Colin Adams
Preston Lancashire
More information about the Haskell-Cafe
mailing list