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
49 modules- Effectful23
- Effectful.Dispatch.Dynamic40Dynamically dispatched effects.
- Effectful.Dispatch.Static22Statically dispatched effects.
- Effectful.Dispatch.Static.Primitive14Primitive API for statically dispatched effects. This module exposes internal implementation details of the Eff
- Effectful.Dispatch.Static.Unsafe2Unsafe utilities for statically dispatched effects.
- Effectful.Error.Dynamic18The dynamically dispatched variant of the Error effect. Note: unless you plan to change interpretations at runtime or you need the
- Effectful.Error.Static18Support for handling errors of a particular type, i.e. checked exceptions. The Error effect is not a general mechanism for handling regular
- Effectful.Exception88Support for runtime exceptions. This module supplies thin wrappers over functions from Control.Exception as
- Effectful.Fail3Provider of the MonadFail instance for Eff.
- Effectful.Input.Dynamic5The dynamically dispatched variant of the Input effect. Note: unless you plan to change interpretations at runtime, it's
- Effectful.Input.Static4Support for access to a value of a particular type.
- Effectful.Input.Static.Action4Support for access to values supplied by a monadic action.
- Effectful.Labeled3Labeled effects. Any effect can be assigned multiple labels so you have more than one
- Effectful.Labeled.Error19Convenience functions for the Labeled Error effect.
- Effectful.Labeled.Input6Convenience functions for the Labeled Input effect.
- Effectful.Labeled.Output9Convenience functions for the Labeled Output effect.
- Effectful.Labeled.Provider9Convenience functions for the Labeled Provider effect.
- Effectful.Labeled.Provider.List11Convenience functions for the Labeled ProviderList effect.
- Effectful.Labeled.Reader6Convenience functions for the Labeled Reader effect.
- Effectful.Labeled.ReturnWith4Convenience functions for the Labeled ReturnWith effect.
- Effectful.Labeled.State15Convenience functions for the Labeled State effect.
- Effectful.Labeled.Writer9Convenience functions for the Labeled Writer effect.
- Effectful.NonDet11Provider of the Alternative and
- Effectful.Output.Dynamic7The dynamically dispatched variant of the Output effect. Note: unless you plan to change interpretations at runtime, it's
- Effectful.Output.Static.Action3Support for feeding values of a particular type to a monadic action.
- Effectful.Output.Static.Local.Array4Support for accumulation of values in a thread local array.
- Effectful.Output.Static.Local.List3Support for accumulation of values in a thread local list.
- Effectful.Output.Static.Shared.Array4Support for accumulation of values in a shared array.
- Effectful.Output.Static.Shared.List3Support for accumulation of values in a shared list.
- Effectful.Prim3Provider of the MonadPrim instance for Eff.
- Effectful.Provider8Turn an effect handler into an effectful operation.
- Effectful.Provider.List10Turn a handler of multiple effects into an effectful operation. Generalizes Effectful.Provider.
- Effectful.Reader.Dynamic6The dynamically dispatched variant of the Reader effect. Note: unless you plan to change interpretations at runtime or you need the
- Effectful.Reader.Static6Support 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.Dynamic3The dynamically dispatched variant of the ReturnWith effect. Note: unless you plan to change interpretations at runtime, it's
- Effectful.ReturnWith.Static3Support for early return from a computation. import Control.Monad (when):{runEff . runReturnWith $ classify 5runEff . runReturnWith $ cla…
- Effectful.State.Dynamic14The dynamically dispatched variant of the State effect. Note: unless you plan to change interpretations at runtime or you need the
- Effectful.State.Static.Local11Support 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.Shared14Support 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.Dynamic8The dynamically dispatched variant of the Writer effect. Note: unless you plan to change interpretations at runtime or you need the
- Effectful.Writer.Static.Local6Support 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.Shared6Support 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.Effect9Type-safe indexing for Effectful.Internal.Monad.Env. This module is intended for internal use only, and may change without warning
- Effectful.Internal.Effect.Dynamic4Definitions and instances for MTL compatibility. This module is intended for internal use only, and may change without warning
- Effectful.Internal.Env35
- Effectful.Internal.Monad50The Eff monad. This module is intended for internal use only, and may change without warning
- Effectful.Internal.Unlift9Implementation of sequential and concurrent unlifts. This module is intended for internal use only, and may change without warning
- Effectful.Internal.Utils10
- Effectful.Internal.Utils.Word64Map6A 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.22.0.0with GHC
- containers-0.8with GHC
- deepseq-1.5.1.0with GHC
- exceptions-0.10.11with GHC
- monad-control-1.0.3.1in this set
- mtl-2.3.1with 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