packages feed

kan-extensions 0.2.1 → 0.2.2

raw patch · 2 files changed

+10/−2 lines, 2 filesPVP ok

version bump matches the API change (PVP)

API changes (from Hackage documentation)

+ Control.Monad.Codensity: instance Alternative v => Alternative (CodensityT v)
+ Control.Monad.Codensity: instance MonadPlus v => MonadPlus (CodensityT v)

Files

Control/Monad/Codensity.hs view
@@ -18,7 +18,7 @@   ) where  import Control.Applicative-import Control.Monad (ap)+import Control.Monad (ap, MonadPlus(..)) import Data.Functor.Adjunction import Data.Functor.Apply import Control.Monad.Trans.Class@@ -52,6 +52,14 @@ instance MonadTrans CodensityT where   lift m = CodensityT (m >>=) +instance Alternative v => Alternative (CodensityT v) where+  empty                         = CodensityT (\_ -> empty)+  CodensityT m <|> CodensityT n = CodensityT (\k -> m k <|> n k)++instance MonadPlus v => MonadPlus (CodensityT v) where+  mzero                             = CodensityT (\_ -> mzero)+  CodensityT m `mplus` CodensityT n = CodensityT (\k -> m k `mplus` n k)+  lowerCodensityT :: Monad m => CodensityT m a -> m a lowerCodensityT a = runCodensityT a return 
kan-extensions.cabal view
@@ -1,6 +1,6 @@ name:          kan-extensions category:      Data Structures, Monads, Comonads, Functors-version:       0.2.1+version:       0.2.2 license:       BSD3 cabal-version: >= 1.6 license-file:  LICENSE