_            _    _        _         _
      /\ \         /\ \ /\ \     /\_\      / /\
      \_\ \       /  \ \\ \ \   / / /     / /  \
      /\__ \     / /\ \ \\ \ \_/ / /     / / /\ \__
     / /_ \ \   / / /\ \ \\ \___/ /     / / /\ \___\
    / / /\ \ \ / / /  \ \_\\ \ \_/      \ \ \ \/___/
   / / /  \/_// / /   / / / \ \ \        \ \ \
  / / /      / / /   / / /   \ \ \   _    \ \ \
 / / /      / / /___/ / /     \ \ \ /_/\__/ / /
/_/ /      / / /____\/ /       \ \_\\ \/___/ /
\_\/       \/_________/         \/_/ \_____\/
ghc-abstract-deque 0.3
Dependencies: ghc-random@1.2.1.1
Channel: guix
Location: gnu/packages/haskell-xyz.scm (gnu packages haskell-xyz)
Home page: https://github.com/rrnewton/haskell-lockfree/wiki
Licenses: Modified BSD
Synopsis: Abstract, parameterized interface to mutable Deques for Haskell
Description:

This Haskell package provides 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, thread-safe, growable queues with important points in between (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.

Total results: 1