packages feed

control-monad-free 0.5.0.1 → 0.5.2

raw patch · 3 files changed

+4/−16 lines, 3 filesdep −mtldep ~basedep ~transformersPVP: major bump suggested

API removals or changes: PVP suggests a major version bump

Dependencies removed: mtl

Dependency ranges changed: base, transformers

API changes (from Hackage documentation)

- Control.Monad.Free: Impure :: !f (Free f a) -> Free f a
+ Control.Monad.Free: Impure :: (f (Free f a)) -> Free f a
- Control.Monad.Free: foldFreeM :: (Functor f, Traversable f, Monad m) => (a -> m b) -> (f b -> m b) -> Free f a -> m b
+ Control.Monad.Free: foldFreeM :: (Traversable f, Monad m) => (a -> m b) -> (f b -> m b) -> Free f a -> m b

Files

Control/Monad/Free.hs view
@@ -35,7 +35,7 @@     free = evalFree (Pure . Left) (Pure . Right)     wrap = Impure -data Free f a = Impure !(f (Free f a)) | Pure a+data Free f a = Impure (f (Free f a)) | Pure a deriving instance (Eq a, Eq (f(Free f a))) => Eq (Free f a) deriving instance (Ord a, Ord (f(Free f a))) => Ord (Free f a) deriving instance (Show a, Show (f(Free f a))) => Show (Free f a)@@ -68,7 +68,7 @@ foldFree pure _    (Pure   x) = pure x foldFree pure imp  (Impure x) = imp (fmap (foldFree pure imp) x) -foldFreeM :: (Functor f, Traversable f, Monad m) => (a -> m b) -> (f b -> m b) -> Free f a -> m b+foldFreeM :: (Traversable f, Monad m) => (a -> m b) -> (f b -> m b) -> Free f a -> m b foldFreeM pure _    (Pure   x) = pure x foldFreeM pure imp  (Impure x) = imp =<< T.mapM (foldFreeM pure imp) x 
Control/Monad/Free/Zip.hs view
@@ -3,11 +3,7 @@  import Control.Monad.Free import Control.Monad.Trans.Class-#ifdef TRANSFORMERS import Control.Monad.Trans.State-#else-import Control.Monad.State-#endif import Data.Foldable import Data.Traversable as T 
control-monad-free.cabal view
@@ -1,5 +1,5 @@ name: control-monad-free-version: 0.5.0.1+version: 0.5.2 Cabal-Version:  >= 1.6 build-type: Simple license: PublicDomain@@ -18,17 +18,9 @@ category: Control, Monads stability: experimental -Flag transformers-   default: True- Library   buildable: True-  build-depends: base >= 2 && < 5, deepseq-  if flag(transformers)-     build-depends: transformers == 0.2.*-     cpp-options: -DTRANSFORMERS-  else-     build-depends: mtl+  build-depends: base >= 2 && < 5, deepseq, transformers   extensions:  StandaloneDeriving, Rank2Types, MultiParamTypeClasses, FlexibleInstances, FlexibleContexts, UndecidableInstances, OverlappingInstances   exposed-modules:      Control.Monad.Free