managed: A monad for managed values

[ bsd3, control, library ] [ Propose Tags ]

In Haskell you very often acquire values using the with... idiom using functions of type (a -> IO r) -> IO r. This idiom forms a Monad, which is a special case of the ContT monad (from transformers) or the Codensity monad (from kan-extensions). The main purpose behind this package is to provide a restricted form of these monads specialized to this unusually common case.

The reason this package defines a specialized version of these types is to:

  • be more beginner-friendly,

  • simplify inferred types and error messages, and:

  • provide some additional type class instances that would otherwise be orphan instances

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

  • No Candidates
Versions [RSS] 1.0.0, 1.0.1, 1.0.2, 1.0.3, 1.0.4, 1.0.5, 1.0.6, 1.0.7, 1.0.8, 1.0.9, 1.0.10 (info)
Dependencies base (>=4.8 && <5), semigroups (>=0.16 && <0.21), transformers (>=0.2.0.0 && <0.7) [details]
License BSD-3-Clause
Copyright 2014 Gabriella Gonzalez
Author Gabriella Gonzalez
Maintainer GenuineGabriella@gmail.com
Category Control
Bug tracker https://github.com/Gabriella439/managed/issues
Source repo head: git clone https://github.com/Gabriella439/managed
Uploaded by GabrielGonzalez at 2023-01-31T20:50:05Z
Distributions Arch:1.0.10, Debian:1.0.7, Fedora:1.0.10, LTSHaskell:1.0.10, NixOS:1.0.10, Stackage:1.0.10
Reverse Dependencies 22 direct, 92 indirect [details]
Downloads 21218 total (107 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2023-01-31 [all 1 reports]