io-classes: Type classes for concurrency with STM, ST and timing
This is a package candidate release! Here you can preview how this package release will appear once published to the main package index (which can be accomplished via the 'maintain' link below). Please note that once a package has been published to the main package index it cannot be undone! Please consult the package uploading documentation for more information.
Warnings:
- [missing-upper-bounds] On library, these packages miss upper bounds: - bytestring Please add them. There is more information at https://pvp.haskell.org/
- [missing-upper-bounds] On library, these packages miss upper bounds: - bytestring - ghc-internal Please add them. There is more information at https://pvp.haskell.org/
- [missing-upper-bounds] On library 'si-timers', these packages miss upper bounds: - deepseq - nothunks Please add them. There is more information at https://pvp.haskell.org/
- [missing-upper-bounds] On library 'testlib', these packages miss upper bounds: - nothunks - QuickCheck Please add them. There is more information at https://pvp.haskell.org/
IO Monad class hierarchy compatible with:
packages.
Sublibraries
io-classes
provides non-standard extensions distributed in public
sublibraries
io-classes:io-classes
- the main library compatible with the above packagesio-classes:strict-stm
- strictSTM
APIio-classes:strict-mvar
- strictMVar
APIio-classes:si-timers
- SI-unit based time / timers API, cancellable timersio-classes:mtl
- MTL instances, some of which are experiemental
Documentation
Haddocks of all public sublibraries are published here.
[Skip to Readme]
Properties
Versions | 1.0.0.0, 1.0.0.1, 1.1.0.0, 1.2.0.0, 1.3.0.0, 1.3.1.0, 1.4.0.0, 1.4.1.0, 1.5.0.0, 1.6.0.0, 1.7.0.0, 1.8.0.0, 1.8.0.0, 1.8.0.1 |
---|---|
Change log | CHANGELOG.md |
Dependencies | array, async (>=2.1 && <2.3), base (>=4.9 && <4.22), bytestring, deepseq, ghc-internal, io-classes, nothunks, primitive (>=0.7 && <0.11), QuickCheck, stm (>=2.5 && <2.5.2 || >=2.5.3 && <2.6), time (>=1.9.1 && <1.13) [details] |
License | Apache-2.0[multiple license files] |
Copyright | 2019-2025 Input Output Global Inc (IOG) |
Author | Alexander Vieth, Duncan Coutts, Marcin Szamotulski, Neil Davies, Thomas Winant |
Maintainer | Duncan Coutts duncan@well-typed.com, Marcin Szamotulski coot@coot.me |
Category | Control |
Bug tracker | https://github.com/input-output-hk/io-sim/issues |
Source repo | head: git clone https://github.com/input-output-hk/io-sim(io-classes) |
Uploaded | by coot at 2025-05-21T15:48:29Z |
library io-classes
Modules
[Index] [Quick Jump]
- Control
- Concurrent
- Monad
library io-classes:testlib
library io-classes:mtl
Modules
[Index] [Quick Jump]
- Control
- Monad
- Class
- MonadEventlog
- MonadST
- MonadSTM
- MonadSay
- MonadThrow
- MonadTime
- MonadTimer
- Control.Monad.Class.Trans
- Class
- Monad
library io-classes:si-timers
library io-classes:strict-mvar
library io-classes:strict-stm
Modules
[Index] [Quick Jump]
- Control
- Concurrent
- Class
- MonadSTM
- Control.Concurrent.Class.MonadSTM.Strict
- Control.Concurrent.Class.MonadSTM.Strict.TArray
- Control.Concurrent.Class.MonadSTM.Strict.TBQueue
- Control.Concurrent.Class.MonadSTM.Strict.TChan
- Control.Concurrent.Class.MonadSTM.Strict.TMVar
- Control.Concurrent.Class.MonadSTM.Strict.TQueue
- Control.Concurrent.Class.MonadSTM.Strict.TSem
- Control.Concurrent.Class.MonadSTM.Strict.TVar
- Control.Concurrent.Class.MonadSTM.Strict
- MonadSTM
- Class
- Concurrent
Flags
Automatic Flags
Name | Description | Default |
---|---|---|
asserts | Enable assertions | Disabled |
Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info
Downloads
- io-classes-1.8.0.0.tar.gz [browse] (Cabal source package)
- Package description (as included in the package)
Maintainer's Corner
Package maintainers
For package maintainers and hackage trustees