a simple, pure LRU cache

This package is not currently in any snapshots. If you're interested in using it, we recommend adding it to Stackage Nightly. Doing so will make builds more reliable, and allow to host generated Haddocks.

BSD-3-Clause licensed by Carl Howells
Maintained by

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.


* Bumped version bound on containers. Pull request contributed by mstksg
* Finally fixed long-standing error in insertInforming

* fix build warning on GHC 7.10
* add insertInforming
* add instances for Data, Typeable, Foldable, and Traversable
* add functions for compatibility with lens

* move changelog to hackage 2 approved location

* Test for containers >= 0.5, rather than GHC >= 7.6

* Make actually compatible with containers 0.5 - fix strictness issue

* Fix containers upper bound for GHC 7.6.

** 1.1.1
* Add an additional modification function for AtomicLRUCache.

* Update containers constraint to allow containers from ghc-7

** 1.1
* Add a Functor instance for LRUCache.
* Add a generic modification function for AtomicLRUCache.

** 1.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.

* A function was added to remove the least-recently used element in
the LRU.

** 0.3
* Added a Show instance for LRU. (Requested by Ben Lee)

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

** 0.2
* Added an Eq instance for LRU.
* Added strictness to eliminate space leaks in common use patterns.

** 0.1.1
* Add the Data.Cache.LRU.IO.Internal module.
* Clean up build warnings on GHC 6.12.1.

* Minor refactoring

* First release