[PATCH] Add guile-srfi-189.

  • Done
  • quality assurance status badge
Details
3 participants
  • Attila Lendvai
  • jgart
  • Ludovic Courtès
Owner
unassigned
Submitted by
Attila Lendvai
Severity
normal
A
A
Attila Lendvai wrote on 17 Jan 2022 14:20
(address . guix-patches@gnu.org)(name . Attila Lendvai)(address . attila@lendvai.name)
20220117132006.21710-1-attila@lendvai.name
* gnu/packages/guile-xyz.scm (guile-srfi-189): New variable.
---

this is mimicing guile-srfi-180.

please note that there's quite an anomaly among the guile-srfi packages,
including which guile they depend on, and the use of native-inputs vs.
inputs. it may be worth cleaning that up for someone with a better
overview of what's going on here.

gnu/packages/guile-xyz.scm | 45 ++++++++++++++++++++++++++++++++++++++
1 file changed, 45 insertions(+)

Toggle diff (58 lines)
diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm
index 74567830e6..6e46a8f376 100644
--- a/gnu/packages/guile-xyz.scm
+++ b/gnu/packages/guile-xyz.scm
@@ -3173,6 +3173,51 @@ (define-public guile-srfi-180
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")
--
2.34.0
A
A
Attila Lendvai wrote on 17 Jan 2022 14:49
how to test it
(name . 53317@debbugs.gnu.org)(address . 53317@debbugs.gnu.org)
t3Sm_-XZPgpCZYtX--itj7dpCqzFGdSKvaL3ZfXY8beLnrQeYzH2ETsHePhIzklVnpSJ1SNoKq3T1858dsoXdMHIIynssyVm09Csip3YcmE=@lendvai.name
you can test it using:

```
$ ./pre-inst-env guix shell guile guile-srfi-189 -- guile
GNU Guile 3.0.7

[...]

scheme@(guile-user)> (use-modules (srfi srfi-189))
scheme@(guile-user)> (nothing)
$1 = #<<nothing>>
scheme@(guile-user)>
```
Attachment: file
J
L
L
Ludovic Courtès wrote on 18 Jan 2022 22:44
Re: bug#53317: [PATCH] Add guile-srfi-189.
(name . Attila Lendvai)(address . attila@lendvai.name)(address . 53317-done@debbugs.gnu.org)
87pmood8hy.fsf@gnu.org
Hi,

Attila Lendvai <attila@lendvai.name> skribis:

Toggle quote (10 lines)
> * gnu/packages/guile-xyz.scm (guile-srfi-189): New variable.
> ---
>
> this is mimicing guile-srfi-180.
>
> please note that there's quite an anomaly among the guile-srfi packages,
> including which guile they depend on, and the use of native-inputs vs.
> inputs. it may be worth cleaning that up for someone with a better
> overview of what's going on here.

I think it’s fine.

Applied, thanks!

Ludo’.
Closed
?