about summary refs log tree commit diff
path: root/gn/packages/lisp.scm
diff options
context:
space:
mode:
authorjgart2022-01-26 03:33:18 -0500
committerjgart2022-01-26 03:36:29 -0500
commit4de27bd44d9537c25d1cb914c04aef8402c67037 (patch)
tree9d342dd60c16af46e94db25f455ce6c29ed2763f /gn/packages/lisp.scm
parent928fa23034cd2d9b32fc6f39b813ea9f723ba616 (diff)
downloadguix-bioinformatics-4de27bd44d9537c25d1cb914c04aef8402c67037.tar.gz
gn: packages: lisp: Add cl-fare-memoization.
Diffstat (limited to 'gn/packages/lisp.scm')
-rw-r--r--gn/packages/lisp.scm37
1 files changed, 37 insertions, 0 deletions
diff --git a/gn/packages/lisp.scm b/gn/packages/lisp.scm
index 6e0b8b2..7abffc9 100644
--- a/gn/packages/lisp.scm
+++ b/gn/packages/lisp.scm
@@ -196,3 +196,40 @@ fringilla labore. Tellus penatibus arcu ligula nisi.")
 (define-public ecl-lorem-ipsum
   (sbcl-package->ecl-package sbcl-lorem-ipsum))
 
+(define-public sbcl-fare-memoization
+  (let ((commit "8b43ac6bcc0057d1a92052e39b6d34c05c2eb7e4")
+        (revision "0"))
+    (package
+      (name "sbcl-fare-memoization")
+      (version "0.4.2")
+      (source
+        (origin
+          (method git-fetch)
+          (uri (git-reference
+                (url "https://gitlab.common-lisp.net/frideau/fare-memoization")
+                (commit commit)))
+          (sha256
+           (base32 "1blmrb4c9gsxj87scz74z1s8w9d1w2r48fyxj0y1sw3vr6bsbb8f"))
+          (file-name (git-file-name name commit))))
+      (build-system asdf-build-system/sbcl)
+      (arguments
+       `(#:asd-files '("fare-memoization.asd")))
+      (native-inputs
+        (list sbcl-hu.dwim.stefil))
+      (inputs
+        (list sbcl-named-readtables))
+      (home-page "https://gitlab.common-lisp.net/frideau/fare-memoization")
+      (synopsis "Memoization library for common-lisp")
+      (description
+"The @code{fare-memoization} library builds on an age-old idea:
+dynamically memoizing Lisp functions.  A memoized function remembers
+results from previous computations, and returns cached results when called
+with the same arguments again, rather than re-doing the computation.")
+      (license license:expat))))
+
+(define-public cl-fare-memoization
+  (sbcl-package->cl-source-package sbcl-fare-memoization))
+
+(define-public ecl-fare-memoization
+  (sbcl-package->ecl-package sbcl-fare-memoization))
+