core.cache v0.6.2 Release Notes
core.cache is a Clojure contrib library providing the following features:
CacheProtocolused as the base abstraction for implementing new synchronous caches
defcachemacro for hooking your
CacheProtocolimplementations into the Clojure associative data capabilities.
Immutable implementations of some basic caching strategies
- First-in-first-out (FIFOCache)
- Least-recently-used (LRUCache)
- Least-used (LUCache)
- Time-to-live (TTLCache)
- Soft-Reference cache (SoftCache)
- Naive cache (BasicCache)
Implementation of an efficient buffer replacement policy based on the low inter-reference recency set algorithm (LIRSCache) described in the LIRS paper
Factory functions for each existing cache type
For Maven-driven projects, use the following slice of XML in your
<dependency> <groupId>org.clojure</groupId> <artifactId>core.cache</artifactId> <version>0.6.2</version> </dependency>
Changes from v0.6.1
The v0.6.2 version of core.cache contains the following changes:
Removed reflection warnings.
Bug fix for LRU, LU and TTL caches disabling the eviction of duplicate keys prior to a threshold less than three.
FIFOCache respects threshold prior to applying its eviction policy.
The following capabilities are under design, development, or consideration for future versions of core.cache:
- More speed!
- Make ClojureScript compatible
- Asynchronous caching protocol
- FunCache implementation
- Hardening of the
- test.generative usage
- Deprecation of Clache
- More documentation and examples
More planning is needed around capabilities not listed nor thought of.