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]
Versions [faq] 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 Mon May 6 22:52:14 UTC 2019
Distributions NixOS:1.0.0
Downloads 27 total (27 in the last 30 days)
Rating (no votes yet) [estimated by rule of succession]
Your Rating
  • λ
  • λ
  • λ
Status Hackage Matrix CI
Docs available [build log]
Last success reported on 2019-05-06 [all 1 reports]

Modules

[Index] [Quick Jump]

Downloads

Maintainer's Corner

For package maintainers and hackage trustees


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".