]> gitweb.factorcode.org Git - factor.git/commitdiff
sequences.extras: simplify zero-loop>array.
authorJohn Benediktsson <mrjbq7@gmail.com>
Mon, 30 Nov 2020 21:18:33 +0000 (13:18 -0800)
committerJohn Benediktsson <mrjbq7@gmail.com>
Mon, 30 Nov 2020 21:18:33 +0000 (13:18 -0800)
extra/sequences/extras/extras.factor

index 86f00f293bcf7b5db2f3d90ee68a8c4f503c1639..7f71ff0076bbd0e33621502c3a28218b9efab2af 100644 (file)
@@ -462,16 +462,11 @@ PRIVATE>
 : loop>array ( ... quot: ( ... -- ... obj/f ) -- ... array )
    { } loop>sequence ; inline
 
-: with-pre-incrementer ( quot: ( ..a n -- ..a obj/f ) seq -- quot: ( ..a n -- ..a obj/f ) )
-    [ -1 ] 2dip
-    [ [ 1 + dup ] prepose ] dip
-    call nip ; inline
+: zero-loop>sequence ( ... quot: ( ... n -- ... obj/f ) exemplar -- ... seq )
+    [ 0 ] [ '[ _ keep 1 + swap ] ] [ loop>sequence ] tri* nip ; inline
 
 : zero-loop>array ( quot: ( ..a n -- ..a obj ) -- seq )
-    [ loop>array ] with-pre-incrementer ; inline
-
-: zero-loop>sequence ( quot: ( ..a n -- ..a obj ) exemplar -- seq )
-    '[ _ loop>sequence ] with-pre-incrementer ; inline
+    { } zero-loop>sequence ; inline
 
 <PRIVATE