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


Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees


  • 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.7) [details]
License BSD-3-Clause
Copyright 2014 Gabriella Gonzalez
Author Gabriella Gonzalez
Revised Revision 3 made by GabrielGonzalez at 2022-12-01T16:55:26Z
Category Control
Bug tracker
Source repo head: git clone
Uploaded by GabrielGonzalez at 2021-12-01T05:12:00Z
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, 93 indirect [details]
Downloads 21316 total (90 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2021-12-01 [all 1 reports]