control-monad-free 0.2 → 0.3
raw patch · 2 files changed
+11/−2 lines, 2 filesPVP ok
version bump matches the API change (PVP)
API changes (from Hackage documentation)
+ Control.Monad.FreeT: class (Functor f, Monad m) => MonadFree f m
+ Control.Monad.FreeT: free :: (MonadFree f m) => m a -> m (Either a (f (m a)))
+ Control.Monad.FreeT: instance (Functor f, Monad m) => MonadFree f (FreeT f m)
Files
- Control/Monad/FreeT.hs +10/−1
- control-monad-free.cabal +1/−1
Control/Monad/FreeT.hs view
@@ -1,5 +1,7 @@-module Control.Monad.FreeT (FreeT(..)) where+{-# LANGUAGE MultiParamTypeClasses, FlexibleInstances #-} +module Control.Monad.FreeT (FreeT(..), MonadFree(..)) where+ import Control.Applicative import Control.Monad (liftM) import Control.Monad.Trans@@ -24,3 +26,10 @@ instance (Functor f) => MonadTrans (FreeT f) where lift = FreeT . liftM Left+++class (Functor f, Monad m) => MonadFree f m where+ free :: m a -> m (Either a (f (m a)))++instance (Functor f, Monad m) => MonadFree f (FreeT f m) where+ free = lift . runFreeT
control-monad-free.cabal view
@@ -1,7 +1,7 @@ Name: control-monad-free Description: A monad transformer for free monads.-Version: 0.2+Version: 0.3 Stability: experimental Synopsis: A monad transformer for free monads. License: PublicDomain