diff options
author | Roman Scherer <roman@burningswell.com> | 2024-09-07 11:51:34 +0200 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2024-09-12 19:10:04 +0200 |
commit | 263205deada6367e0393ad23702afb12d9f23b68 (patch) | |
tree | 95cd0fdbb5e39e97e8a8ace047cf973c2a6de6d1 /gnu/packages | |
parent | a33a7afcc236a1ed584df98099eb13325a629b07 (diff) | |
download | guix-263205deada6367e0393ad23702afb12d9f23b68.tar guix-263205deada6367e0393ad23702afb12d9f23b68.tar.gz |
gnu: Add clojure-core-async.
* gnu/packages/clojure.scm (clojure-core-async): New variable.
Diffstat (limited to 'gnu/packages')
-rw-r--r-- | gnu/packages/clojure.scm | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/gnu/packages/clojure.scm b/gnu/packages/clojure.scm index f11b75140b..4000c075ad 100644 --- a/gnu/packages/clojure.scm +++ b/gnu/packages/clojure.scm @@ -318,6 +318,40 @@ defining and using monads and useful monadic functions.") (home-page "https://github.com/clojure/algo.monads") (license license:epl1.0))) +(define-public clojure-core-async + (package + (name "clojure-core-async") + (version "1.6.681") + (home-page "https://github.com/clojure/core.async") + (source (origin + (method git-fetch) + (uri (git-reference + (url home-page) + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1j9yz14hy2qs8g3flsqkn1sx9c0qlr5mmpy6ab1zml9yhbw5arzg")))) + (build-system clojure-build-system) + (arguments + '(#:source-dirs '("src/main/clojure") + #:test-dirs '("src/test/clojure") + #:doc-dirs '() + #:phases + (modify-phases %standard-phases + ;; Remove ClojureScript code, we are only supporting Clojure for now. + (add-after 'unpack 'delete-cljs + (lambda _ + (delete-file-recursively "src/main/clojure/cljs") + (delete-file-recursively "src/test/cljs")))))) + (propagated-inputs (list clojure-tools-analyzer-jvm)) + (synopsis "Facilities for async programming and communication in Clojure") + (description "The core.async library adds support for asynchronous +programming using channels to Clojure. It provides facilities for independent +threads of activity, communicating via queue-like channels inspired by Hoare’s +work on Communicating Sequential Processes (CSP).") + (license license:epl1.0))) + (define-public clojure-core-cache (package (name "clojure-core-cache") |