atomic-primops: A safe approach to CAS and other atomic ops in Haskell.
After GHC 7.4 a new casMutVar# primop became available, but it's
difficult to use safely, because pointer equality is a highly
unstable property in Haskell. This library provides a safer method
based on the concept of Tickets.
Also, this library uses the "foreign primop" capability of GHC to add access to other variants that may be of interest, specifically, compare and swap inside an array.
Note that as of GHC 7.8, the relevant primops have been included in GHC itself. This library is engineered to work pre- and post-GHC-7.8, while exposing the same interface.
Flags
Automatic Flags
| Name | Description | Default |
|---|---|---|
| debug | Enable extra internal checks. | Disabled |
Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info
Downloads
- atomic-primops-0.8.4.tar.gz [browse] (Cabal source package)
- Package description (as included in the package)
Maintainer's Corner
For package maintainers and hackage trustees
Candidates
- No Candidates
| Versions [RSS] | 0.1.0.0, 0.1.0.2, 0.2.2, 0.2.2.1, 0.3, 0.4, 0.5, 0.5.0.2, 0.6, 0.6.0.5, 0.6.0.6, 0.6.1, 0.6.1.1, 0.7, 0.8, 0.8.0.2, 0.8.0.3, 0.8.0.4, 0.8.1, 0.8.1.1, 0.8.2, 0.8.3, 0.8.4, 0.8.5, 0.8.6, 0.8.7, 0.8.8 (info) |
|---|---|
| Change log | CHANGELOG.md |
| Dependencies | base (>=4.8 && <5), ghc-prim, primitive [details] |
| Tested with | ghc ==8.4.3, ghc ==8.2.2, ghc ==8.0.2, ghc ==7.10.3 |
| License | BSD-3-Clause |
| Author | Ryan Newton |
| Maintainer | rrnewton@gmail.com |
| Uploaded | by ryanglscott at 2020-10-03T15:04:55Z |
| Category | Data |
| Home page | https://github.com/rrnewton/haskell-lockfree/wiki |
| Bug tracker | https://github.com/rrnewton/haskell-lockfree/issues |
| Source repo | head: git clone https://github.com/rrnewton/haskell-lockfree/(atomic-primops) |
| Distributions | Arch:0.8.8, FreeBSD:0.8, LTSHaskell:0.8.8, NixOS:0.8.8, Stackage:0.8.8 |
| Reverse Dependencies | 32 direct, 3976 indirect [details] |
| Downloads | 48813 total (104 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 2020-10-03 [all 1 reports] |