|Version 4 (modified by ross@…, 8 years ago) (diff)|
Multi-parameter type classes
Classes take one or more arguments, becoming relations between types.
- Type classes: exploring the design space by Simon Peyton Jones, Mark Jones and Erik Meijer, Haskell Workshop 1997.
- offered by GHC and Hugs for years
- express more interesting relationships, as in the two occurrences in the base package of the Haskell hierarchical libraries:
class HasBounds a => IArray a e class (HasBounds a, Monad m) => MArray a e mThe instances supplied do not overlap.