aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/lisp-xyz.scm
diff options
context:
space:
mode:
authorCharles <charles.b.jackson@protonmail.com>2021-07-05 08:15:12 -0500
committerGuillaume Le Vaillant <glv@posteo.net>2021-07-12 09:33:03 +0200
commita1522f49f43af6dc548b6a158513c4e86dda7144 (patch)
treec8a691f305f7419fda69d898fe54fc545910cad1 /gnu/packages/lisp-xyz.scm
parentfd53b2122ce0d28de94383d21879d4ee9fcee163 (diff)
downloadguix-a1522f49f43af6dc548b6a158513c4e86dda7144.tar
guix-a1522f49f43af6dc548b6a158513c4e86dda7144.tar.gz
gnu: Add cl-cache-while.
* gnu/packages/lisp-xyz.scm (sbcl-cache-while, ecl-cache-while, cl-cache-while): New variables. Signed-off-by: Guillaume Le Vaillant <glv@posteo.net>
Diffstat (limited to 'gnu/packages/lisp-xyz.scm')
-rw-r--r--gnu/packages/lisp-xyz.scm29
1 files changed, 29 insertions, 0 deletions
diff --git a/gnu/packages/lisp-xyz.scm b/gnu/packages/lisp-xyz.scm
index 795e238c18..193eddef8e 100644
--- a/gnu/packages/lisp-xyz.scm
+++ b/gnu/packages/lisp-xyz.scm
@@ -9820,6 +9820,35 @@ caching based on arguments (an expanded form of memoization).")
(define-public ecl-function-cache
(sbcl-package->ecl-package sbcl-function-cache))
+(define-public sbcl-cache-while
+ (let ((commit "38e9ffbdb2c894670c366c1e5802ffcc8cfd43a7")
+ (revision "1"))
+ (package
+ (name "sbcl-cache-while")
+ (version (git-version "0.0.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/charje/cache-while")
+ (commit commit)))
+ (file-name (git-file-name "cache-while" version))
+ (sha256
+ (base32 "1qil68rfn5irmkb0jk1f6g1zy80wgc3skl8cr4rfgh7ywgm5izx3"))))
+ (build-system asdf-build-system/sbcl)
+ (home-page "https://github.com/charje/cache-while")
+ (synopsis "Temporary / one-time caching macro for Common Lisp")
+ (description
+ "This is a Common Lisp macro for defining temporary caches that
+invalidate based on expressions evaluating to different values.")
+ (license license:llgpl))))
+
+(define-public cl-cache-while
+ (sbcl-package->cl-source-package sbcl-cache-while))
+
+(define-public ecl-cache-while
+ (sbcl-package->ecl-package sbcl-cache-while))
+
(define-public sbcl-type-r
(let ((commit "83c89e38f2f7a7b16f1012777ecaf878cfa6a267")
(revision "1"))