blob: f21a5842237d8605d045a199b762b2fe7d8dc8e6 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
An abstract interface to highly-parameterizable queues/deques. Background:
There exists a feature space for queues that extends between:
* simple, single-ended, non-concurrent, bounded queues
* double-ended, threadsafe, growable queues
... 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".
WWW: https://github.com/rrnewton/haskell-lockfree-queue/wiki
|