From f08451677be0518d4f8904d32f57c65aa2ba446f Mon Sep 17 00:00:00 2001 From: Roman Scherer Date: Sat, 7 Sep 2024 11:51:29 +0200 Subject: gnu: Add clojure-core-memoize. * gnu/packages/clojure.scm (clojure-core-memoize): New variable. --- gnu/packages/clojure.scm | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) (limited to 'gnu/packages') diff --git a/gnu/packages/clojure.scm b/gnu/packages/clojure.scm index 005a7f2b4a..7323b0181f 100644 --- a/gnu/packages/clojure.scm +++ b/gnu/packages/clojure.scm @@ -370,6 +370,33 @@ (define-public clojure-core-match (home-page "https://github.com/clojure/core.match") (license license:epl1.0))) +(define-public clojure-core-memoize + (package + (name "clojure-core-memoize") + (version "1.1.266") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/clojure/core.memoize") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0nys79zrvcnwgyxb91zlyl3nb4p6r6y4n5rbdvzqkvsxxazi9ji0")))) + (build-system clojure-build-system) + (arguments + '(#:source-dirs '("src/main/clojure") + #:test-dirs '("src/test/clojure") + #:doc-dirs '("docs"))) + (propagated-inputs (list clojure-core-cache)) + (synopsis "Memoization framework for Clojure") + (description + "A manipulable, pluggable, memoization framework for Clojure implementing +some common memoization caching strategies, such as First-in-first-out, +Least-recently-used, Least-used and Time-to-live.") + (home-page "https://github.com/clojure/core.memoize") + (license license:epl1.0))) + (define-public clojure-data-codec (package (name "clojure-data-codec") -- cgit v1.2.3