The abstract-deque package

[ Tags: bsd3, data, library ] [ Propose Tags ]

An abstract interface to highly-parameterizable queues/deques.

Background: There exists a feature space for queues that extends between:

... with important points inbetween (such as the queues used for work-stealing).

This package includes an interface for Deques that allows the programmer to use a single API for all of the above, while using the type-system to select an efficient implementation given the requirements (using type families).

This package also includes a simple reference implementation based on IORef and Data.Sequence.


Versions 0.1.1, 0.1.4, 0.1.5, 0.1.6, 0.1.7, 0.2, 0.2.2,, 0.3
Dependencies base (==4.*), containers, HUnit, IORefCAS (>=0.2) [details]
License BSD3
Author Ryan R. Newton
Category Data
Home page
Source repository head: git clone git://
Uploaded Mon Aug 27 15:02:13 UTC 2012 by RyanNewton
Distributions Arch:0.3, Debian:0.3, FreeBSD:0.3, LTSHaskell:0.3, NixOS:0.3, Stackage:0.3, Tumbleweed:0.3
Downloads 33438 total (1829 in the last 30 days)
Rating 0.0 (0 ratings) [clear rating]
  • λ
  • λ
  • λ
Status Docs uploaded by user
Build status unknown [no reports yet]
Hackage Matrix CI





Enable the reference implementation to use hardware compare-and-swap.


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


Maintainer's Corner

For package maintainers and hackage trustees