diff options
author | Thomas Bushnell, BSG <tb@debian.org> | 2007-12-28 16:25:32 -0800 |
---|---|---|
committer | Bryan Newbold <bnewbold@robocracy.org> | 2017-02-20 00:05:39 -0800 |
commit | d8ae23691ed6392b7f320f5fa7d4dd78ae52c10e (patch) | |
tree | b20b8bc02e854c4c86d39ee22a0638a8b06e01af /collectx.scm | |
parent | edd1ebef3ad774e7cbcc2f5918d555bfb0b44091 (diff) | |
parent | 64f037d91e0c9296dcaef9a0ff3eb33b19a2ed34 (diff) | |
download | slib-d8ae23691ed6392b7f320f5fa7d4dd78ae52c10e.tar.gz slib-d8ae23691ed6392b7f320f5fa7d4dd78ae52c10e.zip |
Import Debian changes 3a5-1debian/3a5-1
slib (3a5-1) unstable; urgency=low
* New upstream release.
* slib.texi (Library Catalogs): Repeat change from 3a3-3.
* Makefile: Repeat $(htmldir)slib_toc.html changes from 3a2-1.
* guile.init: (library-vicinity): Repeat change from 3a4-2.
* debian/rules (binary-indep): Don't hide .init files in a separate
subdirectory, thus conforming better to the usual slib practice. Put a
symlink in place to ease transitions. (Closes: #407370).
Diffstat (limited to 'collectx.scm')
-rw-r--r-- | collectx.scm | 39 |
1 files changed, 27 insertions, 12 deletions
diff --git a/collectx.scm b/collectx.scm index 7ba46b9..5ca0ca5 100644 --- a/collectx.scm +++ b/collectx.scm @@ -132,18 +132,33 @@ ;@ (define reduce (lambda (<proc>!1 <seed>!1 . <collections>!1) - (let ((max+1!2 (collect:size (car <collections>!1))) - (generators!2 - (map collect:gen-elts <collections>!1))) - (let loop!4 ((count!3 0)) - (cond ((< count!3 max+1!2) - (set! <seed>!1 - (apply <proc>!1 - <seed>!1 - (map (lambda (g!5) (g!5)) generators!2))) - (loop!4 (collect:add1 count!3))) - (else <seed>!1)))))) - + (letrec ((reduce-init!3 + (lambda (pred?!8 init!8 lst!8) + (if (null? lst!8) + init!8 + (reduce-init!3 + pred?!8 + (pred?!8 init!8 (car lst!8)) + (cdr lst!8)))))) + (if (null? <collections>!1) + (cond ((null? <seed>!1) <seed>!1) + ((null? (cdr <seed>!1)) (car <seed>!1)) + (else + (reduce-init!3 + <proc>!1 + (car <seed>!1) + (cdr <seed>!1)))) + (let ((max+1!4 (collect:size (car <collections>!1))) + (generators!4 + (map collect:gen-elts <collections>!1))) + (let loop!6 ((count!5 0)) + (cond ((< count!5 max+1!4) + (set! <seed>!1 + (apply <proc>!1 + <seed>!1 + (map (lambda (g!7) (g!7)) generators!4))) + (loop!6 (collect:add1 count!5))) + (else <seed>!1)))))))) ;;@ pred true for every elt? |