Bulat Ziganshin <[EMAIL PROTECTED]> writes: | Hello Gabriel, | | Tuesday, August 15, 2006, 10:36:28 PM, you wrote: | | > | Moreover, Haskell type classes supports inheritance. Run-time | > | polymorphism together with inheritance are often seen as OOP | > | distinctive points, so during long time i considered type classes as a | > | form of OOP implementation. but that's wrong! Haskell type classes | > | build on different basis, so they are like C++ templates with added | > | inheritance and run-time polymorphism! And this means that usage of | > | type classes is different from using classes, with its own strong and | > | weak points. | | > Roughly Haskell type classes correspond to parameterized abstract | > classes in C++ (i.e. class templates with virtual functions | > representing the operations). Instance declarations correspond to | > derivation and implementations of those parameterized classes. | | i can't agree.
You're welcome :-) | the differences between TC inheritance/polymorphism and | C++ classes are substantial. i listed them in next part of tutorial which | you should see alongside this message. sorry, I did not see that tutorial. | you can also see paper at | http://homepages.cwi.nl/~ralf/gpce06/ which is all about consequences | of differences between classes and type classes for software | development Thanks for the reference. Nothing in that paper explores what I suggested. I don't see how it contradicts what I said. _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe