-
Drop support for GHC 8.2 and earlier.
-
Generalize instances in
Control.Monad.Codensity
to be of the form:instance (f ~~ f', MonadFail f') => MonadFail (Codensity (f :: k -> TYPE rep))
This avoids having to constrain
k ~ Type
andrep ~ LiftedRep
, which could potentially harm type inference. -
Explicitly implement
liftA2
in theApplicative
instance forData.Functor.Day.Curried
. -
Add an
Adjunction
instance forData.Functor.Day
. -
Add
Adjunction
andDivisible
instances forData.Functor.Contravariant.Day
. -
Add an
Apply
instance forData.Functor.Day.Curried
.
- Only require a
Functor
constraint in theEq
andOrd
instances forCoyoneda
when building againsttransformers-0.4.*
.
- Allow building with
transformers-0.6.*
andmtl-2.3.*
.
- Add
shift
andreset
toControl.Monad.Codensity
.
- Add
hoistCoyoneda
toData.Functor.Contravariant.Coyoneda
.
- Allow building with GHC 9.0.
- Make
Codensity
levity polymorphic. - Add the
Data.Functor.Invariant.Day
module, which combines the covariant and contravariant versions ofDay
. As a result,kan-extensions
now depends on theinvariant
package. - Add a
wrapCodensity
function. - More efficient
Eq1
,Ord1
, andAdjunction
instances forCoyoneda
. - Add
INLINE
pragmas on more functions. - Allow building with
containers-0.6
.
- Make
Density
,Codensity
,Kan
andLan
polykinded. - Add
Eq1
,Ord1
,Read1
andShow1
instances forCoyoneda
andYoneda
. - Change contexts of
Eq
andOrd
instances ofCoyoneda
andYoneda
(and theShow
instance forCoyoneda
) to require lifted class instances, e.g.Eq1 f, Eq a
. - Allow
free-5
.
- Added
hoistCoyoneda
- Removed some redundant constraints
- Move
Data.Functor.Kan.Rift
toData.Functor.Day.Curried
- Builds clean on GHC 7.10
semigroupoids
5 support
- Add
liftRift
andlowerRift
- Remove pointed dependency
- Added
Applicative
instance forDay
- Added
Typeable
instance forCodensity
- Added
tagged
dependency
- Moved co- and contra- variant
Day
convolution fromcontravariant
to here. Day convolution is intimately connected toRift
.
- Added
liftCoT0M
,liftCoT1M
,diter
anddctrlM
for usingCoT w m
to model a state machine with states inw
and effects inm
.
- Made fixes necessary to work around changes in
ImpredicativeTypes
for GHC 7.8.1rc2
- Bug fix so we can compile on GHC 7.4
- Removed
keys
dependency - Now compatible with
adjunctions
4.0
- Moved all the
Yoneda
variants around again. - Improved haddocks
- Added
Data.Functor.Contravariant.Yoneda
to complete the set of Yoneda embeddings/reductions.
- Added several missing isomorphisms
instance Monad m => MonadSpec (Yoneda m)
- Fixed a bug in the signature for
composedRepToCodensity
.
- More combinators for
Rift
/Lift
. - Added combinators for working with representable functors rather than just adjoint functors.
- Split
Data.Functor.KanExtension
intoData.Functor.Kan.Ran
andData.Functor.Kan.Lan
- Split
Data.Functor.KanLift
intoData.Functor.Kan.Rift
andData.Functor.Kan.Lift
- Moved from
Data.Functor.Yoneda.Contravariant
toData.Functor.Yoneda.Reduction
adopting terminology from Todd Trimble. - Added various missing isomorphisms.
- Greatly improved the Haddocks for this package stating laws and derivations where we can (especially for 'Rift' and 'Ran').
- Rift is now
Applicative
. Addedrap
.
- Added right and left Kan lifts under
Data.Functor.KanLift
. - Decreased reliance on the
Composition
class where unnecessary in the API
- Marked modules
Trustworthy
as required forSafeHaskell
in the presence of these extensions.
- Refactored build system
- IRC build-bot notification
- Removed upper bounds on dependencies on my other packages
- Moved
Control.Monad.Free.Church
over to thefree
package instead and removed it fromkan-extensions