Subject: [bug#66359] meaning of %something? (was Re: [bug#66359] [PATCH] gnu: curl: Update to 8.3.0.)

From: Liliana Marie Prikler <[email-masked]>
Date: Mon, 09 Oct 2023 18:57:01 +0200

Am Montag, dem 09.10.2023 um 14:33 +0200 schrieb Simon Tournier:
> Hi Liliana,
> 
> On Fri, 06 Oct 2023 at 11:55, Liliana Marie Prikler
> <[email-masked]> wrote:
> 
> > > Well, %something is usually for "global" parameters.  At least,
> > > that the convention with Guix.  Therefore, I would suggest to not
> > > use it in order to avoid confusion.
> > 
> > As far as I understand %something means "implementation detail" and
> > *something* means global, important something, but I might be
> > mistaken about that.
> 
> For your information, what the Cookbook says about %something:
> 
>         The percentage % is typically used for read-only global
>         variables in the build stage. Note that it is merely a
>         convention, like _ in C. Scheme treats % exactly the same as
> any
>         other letter.
> 
>        
> https://guix.gnu.org/cookbook/en/guix-cookbook.html#A-Scheme-Crash-Course
> 
> I think your change using ’%version’ in some let-binding is not
> consistent with the rest.
I don't think my usage of the percent style changes the meaning of
"typically".  Our implementation details are typically, but not
exclusively, global variables in the build stage.

> My aim with this message is only to communicate on some practises.
> Maybe something should be raised on guix-devel.  Well, if you and I,
> both spending some time working on Guix do not have the same
> understanding for %something, then it means something is poorly
> documented somewhere. :-)
> 
> WDYT about adding a paragraph about %something under,
> 
>     https://guix.gnu.org/manual/devel/en/guix.html#Coding-Style
> 
> ?
I'll consider it, but perhaps explaining this within the same cookbook
entry might be a better idea.  Regardless of the outcome in Guix Devel,
I don't think that constraining variable names *too* hard is helpful,
though.

Cheers