fused-effects 1.1.0.0 → 1.1.1.0
raw patch · 8 files changed
+37/−6 lines, 8 filesPVP ok
version bump matches the API change (PVP)
API changes (from Hackage documentation)
+ Control.Effect.Labelled: instance forall k (label :: k) (sub :: (* -> *) -> * -> *) (m :: * -> *). Control.Monad.Fix.MonadFix (sub m) => Control.Monad.Fix.MonadFix (Control.Effect.Labelled.Labelled label sub m)
+ Control.Effect.Labelled: instance forall k (label :: k) (sub :: (* -> *) -> * -> *) (m :: * -> *). Control.Monad.Fix.MonadFix m => Control.Monad.Fix.MonadFix (Control.Effect.Labelled.UnderLabel label sub m)
Files
- ChangeLog.md +5/−0
- README.lhs +3/−0
- README.md +3/−0
- fused-effects.cabal +1/−1
- src/Control/Carrier/Trace/Ignoring.hs +1/−1
- src/Control/Carrier/Trace/Printing.hs +1/−1
- src/Control/Carrier/Trace/Returning.hs +1/−1
- src/Control/Effect/Labelled.hs +22/−2
ChangeLog.md view
@@ -1,3 +1,8 @@+# v1.1.1++* Defines `MonadFix` instances for `Labelled` and `UnderLabel`. ([#402](https://github.com/fused-effects/fused-effects/pull/402))++ # v1.1 - Adds a church-encoded `State` carrier in `Control.Carrier.State.Church`. ([#363](https://github.com/fused-effects/fused-effects/pull/363))
README.lhs view
@@ -274,6 +274,7 @@ * [`fused-effects-mwc-random`][] provides a performant, high-quality source of random data, as well as values from common numerical distributions. * [`fused-effects-readline`][] provides a REPL effect that interfaces with [`haskeline`][] for its UI. * [`fused-effects-parser`][] provides parser-combinator style effects similar to parsing libraries such as [`trifecta`][].+* [`fused-effects-optics`][] provides combinators for the [`optics`][optics] ecosystem. [exc]: https://github.com/fused-effects/fused-effects-exceptions [felens]: http://hackage.haskell.org/package/fused-effects-lens@@ -284,6 +285,8 @@ [`fused-effects-parser`]: https://github.com/fused-effects/fused-effects-parser [`trifecta`]: https://hackage.haskell.org/package/trifecta [lens]: http://hackage.haskell.org/package/lens+[`fused-effects-optics`]: https://github.com/fused-effects/fused-effects-optics+[optics]: https://github.com/well-typed/optics ### Projects using `fused-effects`
README.md view
@@ -274,6 +274,7 @@ * [`fused-effects-mwc-random`][] provides a performant, high-quality source of random data, as well as values from common numerical distributions. * [`fused-effects-readline`][] provides a REPL effect that interfaces with [`haskeline`][] for its UI. * [`fused-effects-parser`][] provides parser-combinator style effects similar to parsing libraries such as [`trifecta`][].+* [`fused-effects-optics`][] provides combinators for the [`optics`][optics] ecosystem. [exc]: https://github.com/fused-effects/fused-effects-exceptions [felens]: http://hackage.haskell.org/package/fused-effects-lens@@ -284,6 +285,8 @@ [`fused-effects-parser`]: https://github.com/fused-effects/fused-effects-parser [`trifecta`]: https://hackage.haskell.org/package/trifecta [lens]: http://hackage.haskell.org/package/lens+[`fused-effects-optics`]: https://github.com/fused-effects/fused-effects-optics+[optics]: https://github.com/well-typed/optics ### Projects using `fused-effects`
fused-effects.cabal view
@@ -1,7 +1,7 @@ cabal-version: 2.2 name: fused-effects-version: 1.1.0.0+version: 1.1.1.0 synopsis: A fast, flexible, fused effect system. description: A fast, flexible, fused effect system, à la Effect Handlers in Scope, Monad Transformers and Modular Algebraic Effects: What Binds Them Together, and Fusion for Free—Efficient Algebraic Effect Handlers. homepage: https://github.com/fused-effects/fused-effects
src/Control/Carrier/Trace/Ignoring.hs view
@@ -6,7 +6,7 @@ {-# LANGUAGE TypeOperators #-} {-# LANGUAGE UndecidableInstances #-} --- | A carrier for the 'Control.Effect.Trace' effect that ignores all traced results. Useful when you wish to disable tracing without removing all trace statements.+-- | A carrier for the 'Trace' effect that ignores all traced results. Useful when you wish to disable tracing without removing all trace statements. -- -- @since 1.0.0.0 module Control.Carrier.Trace.Ignoring
src/Control/Carrier/Trace/Printing.hs view
@@ -5,7 +5,7 @@ {-# LANGUAGE TypeOperators #-} {-# LANGUAGE UndecidableInstances #-} --- | A carrier for the 'Control.Effect.Trace' effect that prints all traced results to stderr.+-- | A carrier for the 'Trace' effect that prints all traced results to stderr. -- -- @since 1.0.0.0 module Control.Carrier.Trace.Printing
src/Control/Carrier/Trace/Returning.hs view
@@ -5,7 +5,7 @@ {-# LANGUAGE TypeOperators #-} {-# LANGUAGE UndecidableInstances #-} --- | A carrier for the 'Control.Effect.Trace' effect that aggregates and returns all traced values.+-- | A carrier for the 'Trace' effect that aggregates and returns all traced values. -- -- @since 1.0.0.0 module Control.Carrier.Trace.Returning
src/Control/Effect/Labelled.hs view
@@ -37,6 +37,7 @@ import Control.Effect.Sum (reassociateSumL) import Control.Monad (MonadPlus) import Control.Monad.Fail as Fail+import Control.Monad.Fix import Control.Monad.IO.Class import Control.Monad.Trans.Class import Data.Functor.Identity@@ -46,7 +47,17 @@ -- -- @since 1.0.2.0 newtype Labelled (label :: k) (sub :: (Type -> Type) -> (Type -> Type)) m a = Labelled (sub m a)- deriving (Alternative, Applicative, Functor, Monad, Fail.MonadFail, MonadIO, MonadPlus, MonadTrans)+ deriving+ ( Alternative+ , Applicative+ , Functor+ , Monad+ , Fail.MonadFail+ , MonadFix -- ^ @since 1.1.1+ , MonadIO+ , MonadPlus+ , MonadTrans+ ) -- | @since 1.0.2.0 runLabelled :: forall label sub m a . Labelled label sub m a -> sub m a@@ -114,7 +125,16 @@ -- -- @since 1.0.2.0 newtype UnderLabel (label :: k) (sub :: (Type -> Type) -> (Type -> Type)) (m :: Type -> Type) a = UnderLabel (m a)- deriving (Alternative, Applicative, Functor, Monad, Fail.MonadFail, MonadIO, MonadPlus)+ deriving+ ( Alternative+ , Applicative+ , Functor+ , Monad+ , Fail.MonadFail+ , MonadFix -- ^ @since 1.1.1+ , MonadIO+ , MonadPlus+ ) -- | @since 1.0.2.0 runUnderLabel :: forall label sub m a . UnderLabel label sub m a -> m a