homepage: https://github.com/dschrempf/circular#readme
changelog-type: markdown
hash: 53c7006668ca60c8022b89f523df2164e3a81a93b1c32fb6e5616b0864a448ca
test-bench-deps:
  base: '>=4.7 && <5'
  hspec: -any
  quickcheck-instances: -any
  QuickCheck: -any
  hspec-discover: -any
  aeson: -any
  circular: -any
  vector: -any
maintainer: dominik.schrempf@gmail.com
synopsis: Circular fixed-sized mutable vectors
changelog: |2+

  # Changelog for circular


  ## Unreleased changes

basic-deps:
  base: '>=4.7 && <5'
  aeson: -any
  vector: -any
all-versions:
- 0.1.0
author: Dominik Schrempf
latest: 0.1.0
description-type: markdown
description: |2+

  # Circular

  <p align="center"><img src="https://travis-ci.org/dschrempf/circular.svg?branch=master"/></p>

  Circular fixed-sized stacks.

  Circular stacks with fxed maximum size are just normal vectors with a
  pointer to the last element. They are useful because

  -   memory usage is constant
  -   they are fast, especially when summary statistics need to be
      computed across the stack
  -   they can be saved, and restored using JSON format

  When the stack is full, new elements pushed on the stack replace the oldest
  (deepest) elements on the stack. Complex circular behavior can arise when pushes
  and pops are mixed. QuickCheck and unit tests with HSpec give promising results
  &#x2014; have a look yourself.

  I use them, for example, as the data type for traces of Markov chains.

  `Circular` is actively developed and functions may be removed, renamed, or
  changed. New ideas are welcome!

license-name: BSD-3-Clause

Update from Hackage at 2020-06-19T22:06:40Z
Update from Hackage at 2020-06-19T22:06:40Z
