packages: Optimize 'find-packages-by-name' to avoid disk accesses.
authorLudovic Courtès <ludo@gnu.org>
Mon, 29 Sep 2014 19:39:39 +0000 (21:39 +0200)
committerLudovic Courtès <ludo@gnu.org>
Mon, 29 Sep 2014 20:03:46 +0000 (22:03 +0200)
commit9ffc1c00e55eb7931846dbb3fafcf54716fff57c
treee4db3cb23fddd47a85febf843a147248710a1179
parent34942e959744129d848ed430a595a3f5e887e1dc
packages: Optimize 'find-packages-by-name' to avoid disk accesses.

On a profile with 182 entries, "guix package --search-paths" goes from
4.5 seconds down to 0.4 second.

* gnu/packages.scm (find-packages-by-name): Make a name -> package vhash
  in a promise; access it with 'vhash-fold*'.
gnu/packages.scm