bounded-queue: A strict, immutable, thread-safe, single-ended, bounded queue.

[ bsd3, data, library ] [ Propose Tags ]

A strict, immutable, thread-safe, single-ended, bounded queue which automatically forgets old values instead of blocking.


[Skip to Readme]

Modules

[Index] [Quick Jump]

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

  • No Candidates
Versions [RSS] 1.0.0
Dependencies base (>=4.7 && <5), containers, deepseq [details]
License BSD-3-Clause
Copyright 2019 Kadena LLC
Author Colin Woodbury
Maintainer colin@kadena.io
Category Data
Home page https://gitlab.com/fosskers/bounded-queue
Uploaded by fosskers at 2019-05-06T22:52:14Z
Distributions LTSHaskell:1.0.0, NixOS:1.0.0, Stackage:1.0.0
Downloads 812 total (13 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2019-05-06 [all 1 reports]

Readme for bounded-queue-1.0.0

[back to package description]

bounded-queue

This library provides a strict, immutable, thread-safe, single-ended, bounded queue. When the insert limit is reached and a cons is attempted, this BQueue automatically drops old entries off its end. Thus, writes always succeed and never block.

This data structure is intended as a "sliding window" over some stream of data, where we wish old entries to be naturally forgotten. Since this is an immutable data structure and not a concurrent queue, we provide instances for the usual useful typeclasses with which one can perform analysis over the entire "window".