IORefCAS: Atomic compare and swap for IORefs and CASRefs.

[ bsd3, data, deprecated, library ] [ Propose Tags ]
Deprecated in favor of atomic-primops

After GHC 7.2 a new casMutVar# primop became available, but was not yet exposed in Data.IORef. This package fills that gap until such a time as Data.IORef obsoletes it.

Further, in addition to exposing native Haskell CAS operations, this package contains "mockups" that imititate the same functionality using either atomicModifyIORef and unsafe pointer equality (in Data.CAS.Fake) or using foreign functions (Data.CAS.Foreign). These alternatives are useful for debugging.

Note that the foreign option does not operate on IORefs and so is directly interchangeable with Data.CAS and Data.CAS.Fake only if the interface in Data.CAS.Class is used.

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

  • No Candidates
Versions [RSS] 0.0.1, 0.0.1.1, 0.0.1.2, 0.1.0.1, 0.2, 0.2.0.1
Dependencies base (>=4.4.0.0 && <4.7), bits-atomic, ghc-prim [details]
License BSD-3-Clause
Author Adam C. Foltzer, Ryan Newton
Maintainer acfoltzer@gmail.com, rrnewton@gmail.com
Revised Revision 1 made by HerbertValerioRiedel at 2018-09-30T15:28:51Z
Category Data
Uploaded by RyanNewton at 2011-12-07T20:47:19Z
Distributions
Reverse Dependencies 3 direct, 3676 indirect [details]
Downloads 6438 total (20 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs uploaded by user
Build status unknown [no reports yet]