Subject: Re: [bug#50930] [PATCH] gnu: Add guile-pipe.

From: Xinglu Chen <[email-masked]>
Date: Fri, 01 Oct 2021 16:04:20 +0200

On Fri, Oct 01 2021, jgart via Guix-patches via wrote:

> * gnu/packages/guile-xyz.scm (guile-pipe): New variable.
> ---
>  gnu/packages/guile-xyz.scm | 26 ++++++++++++++++++++++++++
>  1 file changed, 26 insertions(+)
>
> diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm
> index 7188058b42..f5c5ccd8da 100644
> --- a/gnu/packages/guile-xyz.scm
> +++ b/gnu/packages/guile-xyz.scm
> @@ -256,6 +256,32 @@ more.")
>      (home-page "https://www.gnu.org/software/artanis/")
>      (license (list license:gpl3+ license:lgpl3+)))) ;dual license
>  
> +(define-public guile-pipe
> +  (let ((commit "0746ec38d19d844dff0c6f62f209b2b6c8d8872e")
> +        (revision "0"))

There should be a comment stating why a commit and not a tag is used.
In this case it seems that upstream is lacking tags.

> +    (package
> +      (name "guile-pipe")
> +      (version (git-version "0.0.0" revision commit))
> +      (source
> +       (origin
> +         (method git-fetch)
> +         (uri (git-reference
> +               (url "https://github.com/joshwalters/guile-pipe")
> +               (commit commit)))
> +         (file-name (git-file-name name version))
> +         (sha256
> +          (base32 "038gwrhfywgs8372q478wn4623lhcmkknfj4p8yaa93bykfc0fml"))))
> +      (build-system guile-build-system)
> +      (native-inputs
> +       `(("guile" ,guile-3.0)))
> +      (home-page "https://github.com/joshwalters/guile-pipe")
> +      (synopsis "Guile pipe macros for functional chaining")
> +      (description
> +"Guile pipe macros for functional chaining, similar to the UNIX pipe
> +@command{|} operator.  Provides identical functionality to Clojure's function
> +threading macros @command{->} and @command{->>}.")

s/@command/@code/

The description should consist of full sentences (see “16.4.4 Synopses
and Descriptions” in the manual); both sentences are lacking a subject.
I suggest:

  This package provides macros for functional chaining in Guile, similar
  to UNIX pipes (@code{|}) and Clojure's threading macros (@code{->} and
  @code{->>}).