From dd61b59937682d1f910706aa5c1fe35119b2eff5 Mon Sep 17 00:00:00 2001 From: Slava Pestov Date: Sun, 14 Jun 2009 18:10:24 -0500 Subject: [PATCH] sequences: update each-index and map-index to not depend on integers-as-sequences --- core/sequences/sequences.factor | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/core/sequences/sequences.factor b/core/sequences/sequences.factor index 36e4c95470..745fe2a033 100755 --- a/core/sequences/sequences.factor +++ b/core/sequences/sequences.factor @@ -358,8 +358,14 @@ PRIVATE> : follow ( obj quot -- seq ) [ dup ] swap [ keep ] curry produce nip ; inline -: prepare-index ( seq quot -- seq n quot ) - [ dup length ] dip ; inline - : each-index ( seq quot -- ) - prepare-index 2each ; inline + (each-index) each-integer ; inline : interleave ( seq between quot -- ) swap [ drop ] [ [ 2dip call ] 2curry ] 2bi @@ -510,7 +513,7 @@ PRIVATE> each-index ; inline : map-index ( seq quot -- newseq ) - prepare-index 2map ; inline + [ dup length iota ] dip 2map ; inline : reduce-index ( seq identity quot -- ) swapd each-index ; inline