lrucache: a simple, pure LRU cache

[ bsd3, data, library ] [ Propose Tags ]
Versions 0.1,, 0.1.1, 0.2,, 0.3, 1.0, 1.1,, 1.1.1,,,,,
Dependencies base (==4.*), containers (>=0.2 && <0.5) [details]
License BSD-3-Clause
Copyright Carl Howells, 2010
Author Carl Howells
Category Data
Home page
Uploaded by CarlHowells at Fri Jan 28 20:09:47 UTC 2011
Distributions Arch:, Debian:, Fedora:, LTSHaskell:, NixOS:, Stackage:, openSUSE:
Downloads 21439 total (97 in the last 30 days)
Rating (no votes yet) [estimated by rule of succession]
Your Rating
  • λ
  • λ
  • λ
Status Docs uploaded by user
Build status unknown [no reports yet]
Hackage Matrix CI

This package contains a simple, pure LRU cache, implemented in terms of Data.Map.

It also contains a mutable IO wrapper providing atomic updates to an LRU cache.

Version History:

  1. 1.0.1 - Update containers constraint to allow containers from ghc-7

  2. 1 - Add a Functor instance for LRUCache. Add a generic modification modification function for AtomicLRUCache.

  3. 0 - Breaking API changes: 1) The newLRU smart constructor now makes the maximum size optional. 2) The delete function now returns the value removed, if one was. Additionally, a function was added to remove the least-recently used element in the LRU.

  4. 3 - Added a Show instance for LRU. (Requested by Ben Lee)

  5. 2.0.1 - Increase strictness slightly. Remove cabal target for test executable. (Just include test sources instead.)

  6. 2 - Added an Eq instance for LRU. Added strictness to eliminate space leaks in common use patterns.

  7. 1.1 - Add the Data.Cache.LRU.IO.Internal module. Clean up build warnings on GHC 6.12.1.

  8. 1.0.1 - Minor refactoring

  9. 1 - First release

[Skip to Readme]




Maintainer's Corner

For package maintainers and hackage trustees

Readme for lrucache-

[back to package description]
This package contains a simple pure LRU cache, implemented in terms of

It also contains a mutable IO wrapper providing atomic updates to an
LRU cache.