Summary
This package defines the type class @MonadControlIO@, a subset of @MonadIO@ into which generic control operations such as @catch@ can be lifted from @IO@. Instances are based on monad transformers in @MonadTransControl@, which includes all standard monad transformers in the @transformers@ library except @ContT@. For convenience, it provides a wrapped version of @Control.Exception@ with types generalized from @IO@ to all monads in @MonadControlIO@. Note that this package is a rewrite of Anders Kaseorg's @monad-peel@ library. The main difference is that this package provides CPS style operators and exploits the @RankNTypes@ language extension to simplify most definitions. The package includes a copy of the @monad-peel@ testsuite written by Anders Kaseorg. The tests can be performed by using @cabal test@. The following @critertion@ based benchmark shows that @monad-control@ is on average about 2.5 times faster than @monad-peel@: <https://github.com/basvandijk/bench-monad-peel-control>
Versions
v1.0.2.3 :: 0/1.0.2.3 :: gentoo
- Modified
- License
- BSD
- Keywords
- amd64 ~amd64-linux ~arm64 ~ppc64 ~riscv ~x86
- USE flags
- doc hscolour profile
USE flags
General
Dependencies
dev-haskell / cabal : A framework for packaging Haskell software
dev-haskell / hscolour : Colourise Haskell code
dev-haskell / stm : Software Transactional Memory
dev-haskell / transformers-base : Lift computations from the bottom of a transformer stack
dev-haskell / transformers-compat : A small compatibility shim for the transformers library
Runtime Dependencies
dev-haskell / stm : Software Transactional Memory
dev-haskell / transformers-base : Lift computations from the bottom of a transformer stack
dev-haskell / transformers-compat : A small compatibility shim for the transformers library
Depending packages
dev-haskell / aws : Amazon Web Services (AWS) for Haskell
dev-haskell / enclosed-exceptions : Catching all exceptions from within an enclosed computation
dev-haskell / hedgehog : Release with confidence
dev-haskell / http-client : An HTTP client engine
dev-haskell / lifted-async : Run lifted IO operations asynchronously and wait for their results
dev-haskell / lifted-base : lifted IO operations from the base library
dev-haskell / monad-logger : A class of monads which can log messages
dev-haskell / persistent-test : Tests for Persistent
dev-haskell / resource-pool : A high-performance striped resource pooling implementation
dev-haskell / servant-server : A family of combinators for defining webservices APIs and serving them
dev-haskell / shelly : shell-like (systems) programming in Haskell
dev-vcs / darcs : a distributed, interactive, smart revision control system
dev-vcs / git-annex : manage files with git, without checking their contents into git
Change logs
- Repository mirror & CI · gentoo
Merge updates from master - hololeap · gentoo
dev-haskell/monad-control: Stabilize for amd64
Signed-off-by: hololeap <hololeap@users.noreply.github.com> Signed-off-by: Sam James <sam@gentoo.org> - Repository mirror & CI · gentoo
Merge updates from master - matoro · gentoo
dev-haskell/monad-control: keyword 1.0.2.3 for ~riscv
Signed-off-by: Jakov Smolić <jsmolic@gentoo.org> - Repository mirror & CI · gentoo
Merge updates from master - matoro · gentoo
dev-haskell/monad-control: keyword 1.0.2.3 for ~arm64
Thanks-to: Marcus Comstedt <marcus@mc.pp.se> Signed-off-by: Sam James <sam@gentoo.org> - Repository mirror & CI · gentoo
Merge updates from master - matoro · gentoo
dev-haskell/monad-control: keyword 1.0.2.3 for ~ppc64
Signed-off-by: matoro <matoro@users.noreply.github.com> Signed-off-by: Sam James <sam@gentoo.org> - Repository mirror & CI · gentoo
Merge updates from master - Sergei Trofimovich · gentoo
dev-haskell/monad-control: update to EAPI=8
Package-Manager: Portage-3.0.20, Repoman-3.0.3 Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org> - Repository mirror & CI · gentoo
Merge updates from master - Sergei Trofimovich · gentoo
dev-haskell/monad-control: drop old
Package-Manager: Portage-3.0.8, Repoman-3.0.2 Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org> - Repository mirror & CI · gentoo
Merge updates from master - Sergei Trofimovich · gentoo
dev-haskell/monad-control: drop old
Package-Manager: Portage-3.0.6, Repoman-3.0.1 Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org> - Repository mirror & CI · gentoo
Merge updates from master - Sergei Trofimovich · gentoo
*/*: destabilize dev-lang/ghc for all arches
dev-lang/ghc is a fast-moving target without much of stable API across major GHC releases. This makes stabilization process a fragile process. The change moves all haskell revdeps to pure ~arch. There are not many outside dev-haskell/*: - app-emulation/ganeti - app-text/pandoc - dev-util/bustle - dev-util/shellcheck - dev-vcs/darcs - x11-wm/xmonad/xmonad Existing stable haskell users are recommended to keyword used packages and all of dev-haskell/* to ease upgrades. Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org> - Repository mirror & CI · gentoo
Merge updates from master - Sergei Trofimovich · gentoo
dev-haskell/monad-control: bump up to 1.0.2.3
Package-Manager: Portage-2.3.81, Repoman-2.3.20 Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org> - Repository mirror & CI · gentoo
Merge updates from master - Michał Górny · gentoo
*/*: Inline mirror://hackage and update URIs
This change inlines mirror://hackage in all ebuilds, and updates URIs to the modern form (old URIs redirect to that). The change has been made using the following command: find -name '*.ebuild' -exec sed -r -i \ -e 's@mirror://hackage/@https://hackage.haskell.org/@g' \ -e 's@https://hackage.haskell.org/packages/archive/([^/]*)/([^/]*)/@https://hackage.haskell.org/package/\1-\2/@g' \ -e '/hackage\.haskell\.org/s@\$\{PN}-\$\{PV}@${P}@g' \ -e '/hackage\.haskell\.org/s@\$\{MY_PN}-\$\{PV}@${MY_P}@g' \ -e '/hackage\.haskell\.org/s@\$\{PN}-\$\{MY_PV}@${MY_P}@g' \ {} + Signed-off-by: Michał Górny <mgorny@gentoo.org> - Repository mirror & CI · gentoo
Merge updates from master - Michael Haubenwallner · gentoo
dev-haskell/monad-control: add ~x86-linux keyword
Package-Manager: Portage-2.3.62, Repoman-2.3.11 Signed-off-by: Michael Haubenwallner <haubi@gentoo.org> - Robin H. Johnson · gentoo
Drop $Id$ per council decision in bug #611234.
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> - Sergei Trofimovich · gentoo
dev-haskell/monad-control: amd64/x86 stable, bug #563090
Package-Manager: portage-2.2.28 - Sergei Trofimovich · gentoo
dev-haskell/monad-control: bump up to 1.0.1.0
Package-Manager: portage-2.2.28 - Sergei Trofimovich · gentoo
dev-haskell/monad-control: drop old
Package-Manager: portage-2.2.28 - Sergei Trofimovich · gentoo
dev-haskell/monad-control: drop old
Package-Manager: portage-2.2.26 - Robin H. Johnson · gentoo
proj/gentoo: Initial commit
This commit represents a new era for Gentoo: Storing the gentoo-x86 tree in Git, as converted from CVS. This commit is the start of the NEW history. Any historical data is intended to be grafted onto this point. Creation process: 1. Take final CVS checkout snapshot 2. Remove ALL ChangeLog* files 3. Transform all Manifests to thin 4. Remove empty Manifests 5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$ 5.1. Do not touch files with -kb/-ko keyword flags. Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed