1
0
mirror of https://git.savannah.gnu.org/git/guix.git synced 2026-04-22 02:00:29 +02:00
Files
guix/gnu/services.scm
Ludovic Courtès 2a4309de43 services: 'fold-services' memoizes service values.
Previously 'fold-services' could end up traversing the same services in
the graph several times, which is what this change addresses.

The hit rate on the 'add-data-to-store' cache goves from 9% to 8% on
"guix system build desktop.tmpl -nd", and the number of lookups in that
cache goes from 4458 to 4383.

* gnu/services.scm (fold-services): Turn 'loop' into a monadic procedure
in %STATE-MONAD and use it to memoize values of visited services.
2019-11-09 23:04:14 +01:00

32 KiB