monad-resumption 0.1.1.3 → 0.1.1.4
raw patch · 4 files changed
+11/−3 lines, 4 filesdep +mmorphPVP: minor bump suggested
API additions: PVP suggests at least a minor version bump
Dependencies added: mmorph
API changes (from Hackage documentation)
+ Control.Monad.Resumption: instance MFunctor ResT
+ Control.Monad.Resumption.Reactive: instance MFunctor (ReacT i o)
Files
- Control/Monad/Resumption.hs +4/−0
- Control/Monad/Resumption/Reactive.hs +4/−0
- README.md +1/−1
- monad-resumption.cabal +2/−2
Control/Monad/Resumption.hs view
@@ -7,6 +7,7 @@ import Control.Monad.Trans import Control.Applicative import Control.Monad.IO.Class+import Control.Monad.Morph -- | Resumption monad transformer. newtype ResT m a = ResT { deResT :: m (Either a (ResT m a)) }@@ -45,6 +46,9 @@ instance MonadIO m => MonadIO (ResT m) where liftIO = lift . liftIO++instance MFunctor ResT where+ hoist f = ResT . f . liftM (fmap (hoist f)) . deResT -- | Waits until the next tick. tick :: Monad m => ResT m ()
Control/Monad/Resumption/Reactive.hs view
@@ -8,6 +8,7 @@ import Control.Monad.Trans import Control.Applicative import Control.Monad.IO.Class+import Control.Monad.Morph import Control.Monad.Resumption -- | Reactive resumption monad transformer.@@ -36,6 +37,9 @@ instance MonadIO m => MonadIO (ReacT input output m) where liftIO = lift . liftIO++instance MFunctor (ReacT i o) where+ hoist f = ReacT . f . liftM (fmap (fmap (fmap (hoist f)))) . deReacT -- | Outputs its argument, then waits for the next input and returns it. signal :: Monad m => output -> ReacT input output m input
README.md view
@@ -1,4 +1,4 @@-monad-resumption [](https://travis-ci.org/igraves/monad-resumption)+monad-resumption [](https://hackage.haskell.org/package/monad-resumption) [](https://travis-ci.org/igraves/monad-resumption) ================= This library implements resumption and reactive resumption monads for use in resumption-passing style programming in Haskell. For more information on the basis behind Resumptions in Haskell, [Cheap (But Functional) Threads](http://people.cs.missouri.edu/~harrisonwl/drafts/CheapThreads.pdf) is an advisable read.
monad-resumption.cabal view
@@ -2,7 +2,7 @@ -- documentation, see http://haskell.org/cabal/users-guide/ name: monad-resumption-version: 0.1.1.3+version: 0.1.1.4 synopsis: Resumption and reactive resumption monads for Haskell. description: This package contains the definitions of Resumption and Reactive Resumption Monads. homepage: https://github.com/igraves/resumption_monads@@ -26,6 +26,6 @@ Control.Monad.Resumption.Connectors -- other-modules: -- other-extensions: - build-depends: base >=4.6 && <= 4.8, transformers, mtl+ build-depends: base >=4.6 && <= 4.8, transformers, mtl, mmorph -- hs-source-dirs: default-language: Haskell2010