Package2.7.1.2Control
effectful-core
An easy to use, performant extensible effects library.
- Version2.7.1.2
- CategoryControl
- LicenceBSD-3-Clause
- AuthorAndrzej Rybczak
- Maintainerandrzej@rybczak.net
- Pinned byhackage effectful-core 2.7.1.2
- Sourcehackage.haskell.org/package/effectful-core-2.7.1.2
Modules
- Effectful
- Effectful.Dispatch.DynamicDynamically dispatched effects.
- Effectful.Dispatch.StaticStatically dispatched effects.
- Effectful.Dispatch.Static.PrimitivePrimitive API for statically dispatched effects. This module exposes internal implementation details of the Eff
- Effectful.Dispatch.Static.UnsafeUnsafe utilities for statically dispatched effects.
- Effectful.Error.DynamicThe dynamically dispatched variant of the Error effect. Note: unless you plan to change interpretations at runtime or you need the
- Effectful.Error.StaticSupport for handling errors of a particular type, i.e. checked exceptions. The Error effect is not a general mechanism for handling regular
- Effectful.ExceptionSupport for runtime exceptions. This module supplies thin wrappers over functions from Control.Exception as
- Effectful.FailProvider of the MonadFail instance for Eff.
- Effectful.Input.DynamicThe dynamically dispatched variant of the Input effect. Note: unless you plan to change interpretations at runtime, it's
- Effectful.Input.StaticSupport for access to a value of a particular type.
- Effectful.Input.Static.ActionSupport for access to values supplied by a monadic action.
- Effectful.LabeledLabeled effects. Any effect can be assigned multiple labels so you have more than one
- Effectful.Labeled.ErrorConvenience functions for the Labeled Error effect.
- Effectful.Labeled.InputConvenience functions for the Labeled Input effect.
- Effectful.Labeled.OutputConvenience functions for the Labeled Output effect.
- Effectful.Labeled.ProviderConvenience functions for the Labeled Provider effect.
- Effectful.Labeled.Provider.ListConvenience functions for the Labeled ProviderList effect.
- Effectful.Labeled.ReaderConvenience functions for the Labeled Reader effect.
- Effectful.Labeled.ReturnWithConvenience functions for the Labeled ReturnWith effect.
- Effectful.Labeled.StateConvenience functions for the Labeled State effect.
- Effectful.Labeled.WriterConvenience functions for the Labeled Writer effect.
- Effectful.NonDetProvider of the Alternative and
- Effectful.Output.DynamicThe dynamically dispatched variant of the Output effect. Note: unless you plan to change interpretations at runtime, it's
- Effectful.Output.Static.ActionSupport for feeding values of a particular type to a monadic action.
- Effectful.Output.Static.Local.ArraySupport for accumulation of values in a thread local array.
- Effectful.Output.Static.Local.ListSupport for accumulation of values in a thread local list.
- Effectful.Output.Static.Shared.ArraySupport for accumulation of values in a shared array.
- Effectful.Output.Static.Shared.ListSupport for accumulation of values in a shared list.
- Effectful.PrimProvider of the MonadPrim instance for Eff.
- Effectful.ProviderTurn an effect handler into an effectful operation.
- Effectful.Provider.ListTurn a handler of multiple effects into an effectful operation. Generalizes Effectful.Provider.
- Effectful.Reader.DynamicThe dynamically dispatched variant of the Reader effect. Note: unless you plan to change interpretations at runtime or you need the
- Effectful.Reader.StaticSupport for access to a read only value of a particular type. Note: strictly speaking the value is not read only because of local. If
- Effectful.ReturnWith.DynamicThe dynamically dispatched variant of the ReturnWith effect. Note: unless you plan to change interpretations at runtime, it's
- Effectful.ReturnWith.StaticSupport for early return from a computation. import Control.Monad (when):{runEff . runReturnWith $ classify 5runEff . runReturnWith $ cla…
- Effectful.State.DynamicThe dynamically dispatched variant of the State effect. Note: unless you plan to change interpretations at runtime or you need the
- Effectful.State.Static.LocalSupport for access to a mutable value of a particular type. The value is thread local. If you want it to be shared between threads, use
- Effectful.State.Static.SharedSupport for access to a shared, mutable value of a particular type. The value is shared between multiple threads. If you want each thread to
- Effectful.Writer.DynamicThe dynamically dispatched variant of the Writer effect. Note: unless you plan to change interpretations at runtime or you need the
- Effectful.Writer.Static.LocalSupport for access to a write only value of a particular type. The value is thread local. If you want it to be shared between threads, use
- Effectful.Writer.Static.SharedSupport for access to a write only value of a particular type. The value is shared between multiple threads. If you want each thread to
Internal modules · 7
- Effectful.Internal.EffectType-safe indexing for Effectful.Internal.Monad.Env. This module is intended for internal use only, and may change without warning
- Effectful.Internal.Effect.DynamicDefinitions and instances for MTL compatibility. This module is intended for internal use only, and may change without warning
- Effectful.Internal.Env
- Effectful.Internal.MonadThe Eff monad. This module is intended for internal use only, and may change without warning
- Effectful.Internal.UnliftImplementation of sequential and concurrent unlifts. This module is intended for internal use only, and may change without warning
- Effectful.Internal.Utils
- Effectful.Internal.Utils.Word64MapA minimal, strict map keyed by Word64 values (adaptation of
Description
An easy to use, performant extensible effects library with seamless integration with the existing Haskell ecosystem.
This library provides core definitions with a minimal dependency footprint. See the effectful package for the "batteries-included" variant.
Depends on
10 packages- base-4.23.0.0with GHC
- containers-0.8with GHC
- deepseq-1.5.2.0with GHC
- exceptions-0.10.12with GHC
- monad-control-1.0.3.1in this set
- mtl-2.3.2with GHC
- primitive-0.9.1.0in this set
- strict-mutable-base-2.0.0.0in this set
- transformers-base-0.4.6.1in this set
- unliftio-core-0.2.1.0in this set