Type Class - Multi-parameter Type Classes

Multi-parameter Type Classes

Type classes permit multiple type parameters, and so type classes can be seen as relations on types. For example, in the GHC standard library, the class IArray expresses a general immutable array interface. In this class, the type class constraint IArray a e means that a is an array type that contains elements of type e. (This restriction on polymorphism is used to implement unboxed array types, for example.)

Haskell code that uses multi-parameter type classes is not portable, as this feature is not part of the Haskell 98 standard. The popular Haskell implementations GHC and Hugs support multi-parameter type classes.

Read more about this topic:  Type Class

Famous quotes containing the words type and/or classes:

    Lise: Look, monsieur, I don’t know what type of girl you think I am, but I’m not. And now I would like to return to my friends.
    Jerry: I thought you were bored with them. You sure looked it.
    Lise: You should see me now.
    Jerry: Ouch.
    Alan Jay Lerner (1918–1986)

    Solidity, caution, integrity, efficiency. Lack of imagination, hypocrisy. These qualities characterize the middle classes in every country, but in England they are national characteristics.
    —E.M. (Edward Morgan)