strict-stm: Strict STM interface polymorphic over stm implementation.

[ apache, concurrency, deprecated, library ] [ Propose Tags ] [ Report a vulnerability ]
Deprecated in favor of io-classes

Strict STM interface provided on top of io-classes and thus compatible with stm & io-sim.


[Skip to Readme]

Flags

Automatic Flags
NameDescriptionDefault
asserts

Enable assertions

Disabled

Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info

Downloads

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

Candidates

Versions [RSS] 1.0.0.0, 1.0.0.1, 1.1.0.0, 1.1.0.1, 1.2.0.0, 1.3.0.0, 1.4.0.0, 1.5.0.0
Change log CHANGELOG.md
Dependencies array, base (>=4.9 && <4.22), io-classes (>=1.5 && <1.6), stm (>=2.5 && <2.6) [details]
Tested with ghc ==8.10 || ==9.2 || ==9.4 || ==9.6 || ==9.8 || ==9.10
License Apache-2.0[multiple license files]
Copyright 2019-2024 Input Output Global Inc (IOG)
Author Alexander Vieth, Duncan Coutts, Marcin Szamotulski, Thomas Winant
Maintainer Duncan Coutts dunca@well-typed.com, Marcin Szamotulski coot@coot.me
Revised Revision 1 made by ErikDeCastroLopo at 2025-02-25T02:14:56Z
Category Concurrency
Bug tracker https://github.com/input-output-hk/io-sim/issues
Source repo head: git clone https://github.com/input-output-hk/io-sim(strict-stm)
Uploaded by IOHK at 2024-05-17T10:34:56Z
Distributions
Reverse Dependencies 4 direct, 0 indirect [details]
Downloads 4012 total (119 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 2024-05-17 [all 1 reports]

Readme for strict-stm-1.5.0.0

[back to package description]

Strict Software Transaction Memory

The strict-stm package provides a strict interface to software transaction memory. It builds on top of io-classes and thus it provides the interface for both stm as well as io-sim.

Novel testing / space-leak elimination approach

The strict interface provides a novel way of testing/eliminating space-leaks which might lurk in stm shared mutable variables. Together with the nothunks library it was successfully used to eliminate and keep a large system (cardano-node) space leak free.