core.memoize is a Clojure contrib library providing the following features:

Usage

Leiningen dependency information:

[org.clojure/core.memoize "0.5.4"]

Maven dependency information:

<dependency>
  <groupId>org.clojure</groupId>
  <artifactId>core.memoize</artifactId>
  <version>0.5.4</version>
</dependency>

Example Usage

(ns my.cool.lib 
  (:require [clojure.core.memoize :refer (memo-lu)]))
    
(def id (memo-lu #(do (Thread/sleep 5000) v) 3))

(id 42)
; ... waits 5 seconds
;=> 42

(id 42)
; instantly
;=> 42 

Places

Changes from v0.5.3

The v0.5.4 version of core.memoize works with the v0.6.3 version of core.cache. In addition, the following bugs have been fixed:

Plans

The 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.