aboutsummaryrefslogtreecommitdiff
path: root/guix/memoization.scm
Commit message (Collapse)AuthorAge
* memoization: (mlambda () ...) allows for inner 'define'.Ludovic Courtès2017-09-03
| | | | | | | Previously (mlambda () (define foo 2) bar) would trigger a syntax error. * guix/memoization.scm (%mlambda): In the zero-argument case, move BODY... to a lambda to allow for inner 'define' and such.
* memoization: Micro-optimize code produced by 'define-cache-procedure'.Ludovic Courtès2017-03-16
| | | | | | * guix/memoization.scm (%nothing): Remove. (define-cache-procedure): Make '%nothing' a local variable, with a literal list.
* Add (guix memoization).Ludovic Courtès2017-01-28
* guix/combinators.scm (memoize): Remove. * guix/memoization.scm: New file. * Makefile.am (MODULES): Add it. * gnu/packages.scm, gnu/packages/bootstrap.scm, guix/build-system/gnu.scm, guix/build-system/python.scm, guix/derivations.scm, guix/gnu-maintenance.scm, guix/import/cran.scm, guix/import/elpa.scm, guix/modules.scm, guix/scripts/build.scm, guix/scripts/graph.scm, guix/scripts/lint.scm, guix/store.scm, guix/utils.scm: Adjust imports accordingly.