base-orphans
Backwards-compatible orphan instances for base
https://github.com/haskell-compat/base-orphans#readme
Version on this page: | 0.4.5 |
LTS Haskell 23.15: | 0.9.3 |
Stackage Nightly 2025-03-20: | 0.9.3 |
Latest on Hackage: | 0.9.3 |
base-orphans-0.4.5@sha256:7f382fa91ebad284053f96042ed72bea3c988ada3a65e6c52834fbbb41e9e557,2628
Module documentation for 0.4.5
- Data
base-orphans
Scope
base-orphans
defines orphan instances that mimic instances available in later
versions of base
to a wider (older) range of compilers. base-orphans
does
not export anything except the orphan instances themselves and complements
base-compat.
Note that base-orphans
doesn’t cover every possible instance. See the
What is not covered section for exceptions.
Usage
To use base-orphans
, simply import Data.Orphans ()
.
What is covered
- Added
Applicative
andAlternative
instances forReadP
andReadPrec
- Added
Bits
,Bounded
, andIntegral
instances forCDev
- Added
Eq
andOrd
instances forControl.Exception.ErrorCall
- Added
Eq
,Ord
,Read
, andShow
instances for data types inGHC.Generics
- Added
Functor
,Applicative
,Alternative
, andMonadPlus
instances forArrowMonad
- Added
Functor
,Applicative
, andMonad
instances forFirst
andLast
- Added
Monoid
,Eq
,Ord
,Read
, andShow
instances forConst
- Added
Read
andShow
instances forDown
- Added
Eq
,Ord
,Read
, andShow
instances forZipList
- Added
Monad
instance forWrappedMonad
- Added
Data
andIsList
instances forVersion
Applicative
instance for strict and lazyST
Bits
instance forBool
Foldable
instance forEither
,(,)
andConst
Functor
instance forHandler
,ArgOrder
,OptDescr
, andArgDescr
Num
instance forSum
andProduct
Read
instance forFixed
Show
instance forFingerprint
Storable
instance forComplex
andRatio
Traversable
instance forEither
,(,)
andConst
Typeable
instance for most data types, typeclasses, and promoted data constructors (when possible)
What is not covered
base-orphans
does not define the following instances:
Generic
orGeneric1
instances. These can be found in theGenerics.Deriving.Instances
module of thegeneric-deriving
library.
Supported versions of GHC/base
ghc-7.10.2
/base-4.8.1.0
ghc-7.10.1
/base-4.8.0.0
ghc-7.8.4
/base-4.7.0.2
ghc-7.8.3
/base-4.7.0.1
ghc-7.8.2
/base-4.7.0.0
ghc-7.8.1
/base-4.7.0.0
ghc-7.6.3
/base-4.6.0.1
ghc-7.6.2
/base-4.6.0.1
ghc-7.6.1
/base-4.6.0.0
ghc-7.4.2
/base-4.5.1.0
ghc-7.4.1
/base-4.5.0.0
ghc-7.2.2
/base-4.4.1.0
ghc-7.2.1
/base-4.4.0.0
ghc-7.0.4
/base-4.3.1.0
ghc-7.0.3
/base-4.3.1.0
ghc-7.0.2
/base-4.3.1.0
ghc-7.0.1
/base-4.3.0.0
We also make an attempt to keep base-orphans
building with GHC HEAD, but due
to its volatility, it may not work at any given point in time. If it doesn’t,
please report it!
Patches are welcome; add tests for new code!
Changes
Changes in 0.4.5
- Import
Control.Monad.Instances
(which exportsFunctor
andMonad
instances for(->) r
, andFunctor
instances for(,) a
andEither a
) on GHCs before 7.6. This ensures that these instances will always be in scope, and you won’t have to import a module which is deprecated on recent GHC releases. - Fix build on GHC HEAD (again)
Changes in 0.4.4
- Fix build on GHC HEAD
Changes in 0.4.3
- Fix build on OSes where
HTYPE_DEV_T = Int32
(e.g., OS X)
Changes in 0.4.2
Functor
instances forHandler
Functor
.Applicative
,Alternative
, andMonadPlus
instances forArrowMonad
- Expose
Read
andShow
instances forDown
on GHCs before 7.8 Bits
,Bounded
, andIntegral
instances forCDev
Changes in 0.4.1
- Fixed imports on GHC < 7.8 on Windows
Changes in 0.4.0
- Removed all
Generic
andGeneric1
instances. These have been moved to thegeneric-deriving
library.
Changes in 0.3.3
Typeable
instances for(~)
,Any
,Constraint
,CSigset
,Handler
,Opaque
,SPEC
, and every promotable data constructor inbase
Changes in 0.3.2
Storable (Complex a)
instance no longer requires aRealFloat a
constraint if usingbase-4.4
or later
Changes in 0.3.1
Functor
,Applicative
, andMonad
instances forFirst
andLast
Changes in 0.3.0
Show
instance forFingerprint
Data.Orphans
is nowTrustworthy
- Backported the
Generic
andGeneric1
instances available inbase-4.7.0.0
to GHC 7.2, 7.4, and 7.6, namelyConst
,WrappedMonad
, andZipList
fromControl.Applicative
WrappedArrow
fromControl.Category
All
,Any
,Dual
,Endo
,First
,Last
,Product
, andSum
fromData.Monoid
U1
,Par1
,Rec1
,K1
,M1
,(:+:)
,(:*:)
,(:.:)
,Arity
,Associativity
, andFixity
fromGHC.Generics
Changes in 0.2.0
- Drop GHC 6.12 (and
base-4.2.0.0
) compatibility - Fix Windows, GHCJS build
Read
instance forFixed
Applicative
instances for strict and lazyST
Typeable
instance forSampleVar
Applicative
andAlternative
instances forReadP
andReadPrec
Typeable
instance forKProxy
Typeable
instances for more data types inGHC.
-prefixed modulesGeneric
instances forArity
,Associativity
, andFixity
from theGHC.Generics
module- Corrected the
Generic
instance for(:*:)
to work around GHC bug #9830