[Haskell-cafe] ANN: concurrent-extra-0.1

Roel van Dijk vandijk.roel at gmail.com
Wed Feb 17 09:10:38 EST 2010


We would like to announce the release of concurrent-extra [1]. A
library which offers a few extra synchronization primitives. These
primitives are found in the standard libraries of languages like Java
and Python, but not in Haskell.

Quick overview:

* Lock: Enforce exclusive access to a resource. Also known as a mutex
  or a binary semaphore.

* RLock: A lock which can be acquired multiple times by the same
  thread. Also known as a reentrant mutex.

* Event: Wake multiple threads by signaling an event. Includes both
  pessimistic and optimistic versions.

* ReadWriteLock: Multiple-reader, single-writer locks. Used to protect
  shared resources which may be concurrently read, but only
  sequentially written.

* ReadWriteVar: Concurrent read, sequential write variables.

Plug & Play:
  cabal install concurrent-extra
  darcs get http://code.haskell.org/~roelvandijk/code/concurrent-extra/

Thanks to Neil Brown and Simon Marlow for an initial review. Comments
are still more than welcome!

Roel & Bas van Dijk

[1] http://hackage.haskell.org/package/concurrent-extra

More information about the Haskell-Cafe mailing list