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

From: Simon Tournier <[email-masked]>
Date: Mon, 09 Oct 2023 14:33:19 +0200

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.

Well, I have seen you already pushed this change.  Not an issue at all,
I can easily live with it. :-)

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

?

Cheers,
simon