On 26-Jan-2003, Norman Ramsey <[EMAIL PROTECTED]> wrote: > > > In a fit of madness, I have agreed to deliver a 50-minute lecture > > > on type classes to an audience of undergraduate students. These > > > students will have seen some simple typing rules for F2 and will > > > have some exposure to Hindley-Milner type inference in the context > > > of ML. > > > > Will they have had exposure to more "traditional" OO programming? If > > so, it might be useful to note the difference between Haskell type > > classes and C++/Java/whatever classes, namely that Haskell decouples > > types and the interfaces that they support. The advantage is that you > > can extend a type with a new interface at any point, not just when you > > define the type. > > Hmm --- you are talking about the `instance' declarations, right?
Yes -- the fact that Haskell has separate instance declarations, as opposed to making this information part of the `data' declaration. In most OO languages inheritence relations need to be specified in the type definition. -- Fergus Henderson <[EMAIL PROTECTED]> | "I have always known that the pursuit The University of Melbourne | of excellence is a lethal habit" WWW: <http://www.cs.mu.oz.au/~fjh> | -- the last words of T. S. Garp. _______________________________________________ Haskell mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell