effect-monad: Embeds effect systems and program logics into Haskell using graded monads and parameterised monads

[ bsd3, control, library, monads ] [ Propose Tags ]

Provides the graded monad structure to Haskell via Control.Effect with a number of analogs of familiar monads and some new things: Reader, Writer, State, Maybe, Counter, Update and a wrapper over normal monads (Control.Effect.Monad). This provides a way to embed effect systems into Haskell. For more information see the paper "Embedding effect systems in Haskell" by Orchard and Petricek http://dorchard.co.uk/publ/haskell14-effects.pdf (Haskell, 2014) Also provides the parameterised monad structure due to Atkey in Control.Effect.Parameterised along with some instances: AtomicState, SafeFiles, ExtensibleState and the examples in https://github.com/dorchard/effect-monad/tree/master/examples. (note, this package was previously called ixmonad until September 2014).

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

Versions [RSS] 0.6, 0.6.1, 0.7.0.0, 0.8.0.0, 0.8.1.0
Dependencies base (<5), type-level-sets (>=0.8.7.0) [details]
License BSD-3-Clause
Copyright 2013-18 University of Kent
Author Dominic Orchard
Maintainer Dominic Orchard
Category Control, Monads
Source repo head: git clone https://github.com/dorchard/effect-monad
Uploaded by DominicOrchard at 2018-01-24T12:51:55Z
Distributions
Reverse Dependencies 1 direct, 0 indirect [details]
Downloads 4801 total (17 in the last 30 days)
Rating 2.0 (votes: 1) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2018-01-24 [all 1 reports]