summaryrefslogtreecommitdiff
path: root/gnu/packages/lisp-xyz.scm
diff options
context:
space:
mode:
authorPierre Neidhardt <mail@ambrevar.xyz>2021-06-21 09:14:04 +0200
committerPierre Neidhardt <mail@ambrevar.xyz>2021-06-21 11:18:13 +0200
commit9d48a179d19ffa32c3255bbc5c573afad0b2cc3a (patch)
tree98fadfbfe5a60aeb4070645909e423fbedac4533 /gnu/packages/lisp-xyz.scm
parent659cc959b3d028edb1e1f1d931ccc10983285f1d (diff)
downloadguix-patches-9d48a179d19ffa32c3255bbc5c573afad0b2cc3a.tar
guix-patches-9d48a179d19ffa32c3255bbc5c573afad0b2cc3a.tar.gz
gnu: Add binding-arrows.
* gnu/packages/lisp-xyz.scm (cl-binding-arrows, ecl-binding-arrows, sbcl-binding-arrows): New variables.
Diffstat (limited to 'gnu/packages/lisp-xyz.scm')
-rw-r--r--gnu/packages/lisp-xyz.scm37
1 files changed, 37 insertions, 0 deletions
diff --git a/gnu/packages/lisp-xyz.scm b/gnu/packages/lisp-xyz.scm
index 2e95d5c694..f0073b80b9 100644
--- a/gnu/packages/lisp-xyz.scm
+++ b/gnu/packages/lisp-xyz.scm
@@ -17477,3 +17477,40 @@ resolving the tension between granularity and concurrency.")
(define-public cl-stmx
(sbcl-package->cl-source-package sbcl-stmx))
+
+(define-public sbcl-binding-arrows
+ ;; Fork of sbcl-arrows that does not have a new tag.
+ (let ((commit "d19364ec8850880ed6e42078ccaa2ed9114dc83a")
+ (revision "1"))
+ (package
+ (name "sbcl-binding-arrows")
+ (version (git-version "1.0.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/phoe/binding-arrows")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0hqikgzic7kjq2n1d924yldfm30qz67cmsk6gghi9cbmxkwdlwp8"))))
+ (build-system asdf-build-system/sbcl)
+ (native-inputs
+ `(("hu.dwim.stefil" ,sbcl-hu.dwim.stefil)))
+ (home-page "https://github.com/phoe/binding-arrows")
+ (synopsis "Threading macros based on binding anonymous variables")
+ (description
+ "This system implements binding threading macros -- a kind of threading
+macros with different semantics than classical, Clojure core threading macros
+or their extension, swiss-arrows. Two Common Lisp implementations of those are
+@code{arrows} and @code{arrow-macros}.
+
+This system is a fork of @code{arrows} with changes in semantics that make it
+impossible to merge back upstream.")
+ (license license:expat))))
+
+(define-public ecl-binding-arrows
+ (sbcl-package->ecl-package sbcl-binding-arrows))
+
+(define-public cl-binding-arrows
+ (sbcl-package->cl-source-package sbcl-binding-arrows))