May 26, 2018

Abstract, parameterized interface to mutable Deques

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//