6.8.1. Multi-parameter type classes — Glasgow Haskell Compiler 9.10.0.20240328 User's Guide

# 6.8.1. Multi-parameter type classes

`MultiParamTypeClasses`

  Implies: | `ConstrainedClassMethods`
  Implied by: | `FunctionalDependencies`
  Since: | 6.8.1
  Status: | Included in `GHC2024`, `GHC2021`

  Allow the definition of typeclasses with more than one parameter.

Multi-parameter type classes are permitted, with extension `MultiParamTypeClasses`. For example:

    class Collection c a where
        union :: c a -> c a -> c a
        ...etc.