unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* G-exps: thunk instead of top-level references?
@ 2024-03-06 10:07 Hartmut Goebel
  2024-03-10  9:58 ` Josselin Poiret
  0 siblings, 1 reply; 2+ messages in thread
From: Hartmut Goebel @ 2024-03-06 10:07 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: guix-devel

[-- Attachment #1: Type: text/html, Size: 3413 bytes --]

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: G-exps: thunk instead of top-level references?
  2024-03-06 10:07 G-exps: thunk instead of top-level references? Hartmut Goebel
@ 2024-03-10  9:58 ` Josselin Poiret
  0 siblings, 0 replies; 2+ messages in thread
From: Josselin Poiret @ 2024-03-10  9:58 UTC (permalink / raw)
  To: Hartmut Goebel, Ludovic Courtès; +Cc: guix-devel

[-- Attachment #1: Type: text/plain, Size: 1522 bytes --]

Hi Hartmut,

Hartmut Goebel <h.goebel@crazy-compilers.com> writes:

> Hi Ludio,
>
> I'd like to get some advice:
>
> In commit 84c3aafb5a18ad278bbb36df7b70849fe05789c8 "trytond: Avoid top-level references to other modules"
> your turned a top-level variable which defines into a thunk:
>
> <https://git.savannah.gnu.org/cgit/guix.git/commit/?id=84c3aafb5a18ad278bbb36df7b70849fe05789c8>
>
>  -(define %standard-trytond-native-inputs
>  +(define (%standard-trytond-native-inputs)
>     `(("python-dateutil" ,python-dateutil)
>
> and the users:
>
>       (native-inputs
>  -     `(,@%standard-trytond-native-inputs
>  +     `(,@(%standard-trytond-native-inputs)
>          ("trytond-purchase" ,trytond-purchase)))
>
> I'm about to change the uses into G-exprs (see below) and wonder whether "%standard-trytond-native-inputs"
> should still be a thunk or can be turned pack into a top-level variable.
>
>  -(define (%standard-trytond-native-inputs) 
>  -  `(("python-dateutil" ,python-dateutil) 
>  +(define %standard-trytond-native-inputs 
>  +  (list python-dateutil
>
> and uses
>
>  -    (native-inputs (%standard-trytond-native-inputs))
>  +    (native-inputs
>  +     (cons* trytond-account-payment-clearing
>  +            %standard-trytond-native-inputs))
>   

Yes it still needs to be a thunk for the same reason: no top-level
references to packages in other modules.  By the way, (list ...) is not
a G-exp, it's rather the new input style.

Best,
-- 
Josselin Poiret

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 682 bytes --]

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2024-03-10  9:58 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-03-06 10:07 G-exps: thunk instead of top-level references? Hartmut Goebel
2024-03-10  9:58 ` Josselin Poiret

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).