core.memoize is a new Clojure contrib library providing the following features:
An underlying PluggableMemoization
protocol that allows the use of customizable and swappable memoization caches that adhere to the synchronous CacheProtocol
found in core.cache
Memoization builders for implementations of common caching strategies, including:
memo-fifo
)memo-lru
)memo-lu
)memo-ttl
)memo
) that duplicates the functionality of Clojure's memoize
functionFunctions for manipulating the memoization cache of core.memoize
backed functions
core.memoize is based on a library named Unk, found at http://github.com/fogus/unk that is planned for deprecation.
The v0.5.1 version of core.memoize is based almost wholly on the final version of Unk, with the following changes:
SoftCache
backed implementation was buggy and removed for nowThe following capabilities are under design, development, or consideration for future versions of core.memoize:
More planning is needed around capabilities not listed nor thought of.
Can you improve this documentation? These fine people already did:
fogus & Sean CorfieldEdit on GitHub
cljdoc is a website building & hosting documentation for Clojure/Script libraries
× close