stm

Software Transactional Memory

Version on this page:2.4.3
LTS Haskell 22.22:2.5.1.0
Stackage Nightly 2024-05-16:2.5.2.1
Latest on Hackage:2.5.3.1

See all snapshots stm appears in

BSD-3-Clause licensed
Maintained by [email protected]
This version can be pinned in stack with:stm-2.4.3@sha256:2ac14081c71790c27dc9443cc73c354bc038b4941fc05a44f07ce135e74a4607,1589

Module documentation for 2.4.3

  • Control
    • Control.Concurrent
      • Control.Concurrent.STM
        • Control.Concurrent.STM.TArray
        • Control.Concurrent.STM.TBQueue
        • Control.Concurrent.STM.TChan
        • Control.Concurrent.STM.TMVar
        • Control.Concurrent.STM.TQueue
        • Control.Concurrent.STM.TSem
        • Control.Concurrent.STM.TVar
    • Control.Monad
      • Control.Monad.STM

A modular composable concurrency abstraction.

Changes

Changelog for stm package

2.4.3 Mar 2014

  • Update behaviour of newBroadcastTChanIO to match newBroadcastTChan in causing an error on a read from the broadcast channel

  • Add mkWeakTVar

  • Add isFullTBQueue

  • Fix TChan created via newBroadcastTChanIO to throw same exception on a readTChan as when created via newBroadcastTChan

  • Update to Cabal 1.10 format

2.4.2 Nov 2012

  • Add Control.Concurrent.STM.TSem (transactional semaphore)

  • Add Applicative/Alternative instances of STM for GHC <7.0

  • Throw proper exception when readTChan called on a broadcast TChan

2.4 Jul 2012

  • Add Control.Concurrent.STM.TQueue (a faster TChan)

  • Add Control.Concurrent.STM.TBQueue (a bounded channel based on TQueue)

  • Add Eq instance for TChan

  • Add newBroadcastTChan and newBroadcastTChanIO

  • Some performance improvements for TChan

  • Add cloneTChan