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:

    How is freedom measured, in individuals as in nations? By the resistance which has to be overcome, by the effort it costs to stay aloft. One would have to seek the highest type of free man where the greatest resistance is constantly being overcome: five steps from tyranny, near the threshold of the danger of servitude.
    Friedrich Nietzsche (1844–1900)

    Genocide begins, however improbably, in the conviction that classes of biological distinction indisputably sanction social and political discrimination.
    Andrea Dworkin (b. 1946)