summaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
authorAttila Lendvai <attila@lendvai.name>2022-01-17 14:20:07 +0100
committerLudovic Courtès <ludo@gnu.org>2022-01-18 22:51:09 +0100
commit00ac8ccd21981c97682bd5fc2ebd97ecb2872020 (patch)
tree521d268cb54297c8e6f6559d5e86ef8ddaeacf3f /gnu
parent7eb883b7c284c78cc17093bfc4ef2d70e0acad83 (diff)
gnu: Add guile-srfi-189.
* gnu/packages/guile-xyz.scm (guile-srfi-189): New variable. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/guile-xyz.scm45
1 files changed, 45 insertions, 0 deletions
diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm
index 79a2f0cc53..9a7e7d8ba4 100644
--- a/gnu/packages/guile-xyz.scm
+++ b/gnu/packages/guile-xyz.scm
@@ -3172,6 +3172,51 @@ It also supports parsing JSON objects that may be bigger than memory with a stre
API.")
(license license:expat))))
+(define-public guile-srfi-189
+ (let ((commit "a0e3786702956c9e510d92746474ac988c2010ec")
+ (revision "0"))
+ (package
+ (name "guile-srfi-189")
+ (version (git-version "0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ ;; This is a fork of:
+ ;; (url "https://github.com/scheme-requests-for-implementation/srfi-189")
+ ;; Upstream merge requested at:
+ ;; https://github.com/scheme-requests-for-implementation/srfi-189/pull/21
+ ;; TODO switch over to the official repo when the PR gets merged
+ (url "https://github.com/attila-lendvai-patches/srfi-189")
+ (commit commit)))
+ (sha256
+ (base32
+ "0iqv4sjwbp4k87r9l9abzbs5yjcljm69m91kb1ypb03b0rx7napy"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ (delete-file "test-syntax.scm")
+ (delete-file "test.scm")))
+ (file-name (git-file-name name version))))
+ (build-system guile-build-system)
+ (arguments
+ '(#:not-compiled-file-regexp "srfi/189\\.scm$")) ; it's INCLUDE'd
+ (native-inputs
+ (list guile-3.0))
+ (propagated-inputs
+ (list guile-srfi-145))
+ (home-page "https://srfi.schemers.org/srfi-189/")
+ (synopsis "Scheme SRFI implementation of Maybe and Either")
+ (description
+ "This SRFI defines two disjoint immutable container types known as
+Maybe and Either, both of which can contain objects collectively known
+as their payload. A Maybe object is either a Just object or the unique
+object Nothing (which has no payload); an Either object is either a Right
+object or a Left object. Maybe represents the concept of optional values;
+Either represents the concept of values which are either correct (Right)
+or errors (Left).")
+ (license license:expat))))
+
(define-public emacsy
(package
(name "emacsy")