Provides Template Haskell functions that mimic deriving extensions that were
introduced or modified in recent versions of GHC. Currently, the following
typeclasses/extensions are covered:
Deriving 'Eq', 'Eq1', and 'Eq2'
Deriving 'Ord', 'Ord1', and 'Ord2'
Deriving 'Read', 'Read1', and 'Read2'
Deriving 'Show', 'Show1', and 'Show2'
See the "Data.Deriving" module for a full list of backported changes.
Note that some recent GHC typeclasses/extensions are not covered by this
'DeriveGeneric', which was introducted in GHC 7.2 for deriving 'Generic'
instances, and modified in GHC 7.6 to allow derivation of 'Generic1' instances.
Use 'Generics.Deriving.TH' from
'<http://hackage.haskell.org/package/generic-deriving generic-deriving>' to
derive 'Generic(1)' using Template Haskell.
'DeriveLift', which was introduced in GHC 8.0 for deriving 'Lift' instances.
Use 'Language.Haskell.TH.Lift' from
'<http://hackage.haskell.org/package/th-lift th-lift>' to derive 'Lift' using
The 'Bifunctor' typeclass, which was introduced in GHC 7.10, as well as the
'Bifoldable' and 'Bitraversable' typeclasses, which were introduced in GHC 8.2.
Use 'Data.Bifunctor.TH' from '<http://hackage.haskell.org/package/bifunctors
bifunctors>' to derive these typeclasses using Template Haskell.