Subject: [bug#65860] [PATCH 0/4] Resolve a circular module dependencies in embedded modules

From: Maxim Cournoyer <[email-masked]>
Date: Sun, 17 Sep 2023 20:52:53 -0400

Hi Ludovic,

Ludovic Courtès <[email-masked]> writes:

[...]

> I agree that this needs to be addressed.  I wondered whether/how hard we
> should search for a different solution.

OK.  I think the current situation needs to be resolved ASAP, but longer
term I'm definitely willing to revisit our strategy when it comes to
cross compiler toolchains.

[...]

> BTW, another issue with the package-returning procedures: they return a
> fresh package object at each call, which defeats caching.  I think you
> should be able to observe it with:
>
>   GUIX_PROFILING=object-cache guix build axoloti-runtime -d  --no-grafts
>
> The effect will be more acute on the build farms since they compute
> derivations for everything that depends on these toolchains.
>
> The solution would be to make those procedures memoizing, with ‘mlambda’
> or similar.

I haven't tried measuring the impact, but I've use mlambda in the v2
just sent; thanks for the suggesting it!

-- 
Thanks,
Maxim