]> gitweb.factorcode.org Git - factor.git/commitdiff
sequences.extras: Add loop>sequence, loop>array
authorDoug Coleman <doug.coleman@gmail.com>
Tue, 11 Sep 2012 21:29:40 +0000 (14:29 -0700)
committerDoug Coleman <doug.coleman@gmail.com>
Tue, 11 Sep 2012 21:30:04 +0000 (14:30 -0700)
extra/sequences/extras/extras.factor

index 495b38f9bd74b33400be816518d6eb9789c6af5c..8c8571466330039d80e1355cd5eb87167cea9e86 100644 (file)
@@ -308,3 +308,9 @@ INSTANCE: odds immutable-sequence
 : fourth? ( seq quot -- ? ) [ fourth ] dip call ; inline
 : last? ( seq quot -- ? ) [ last ] dip call ; inline
 : nth? ( n seq quot -- ? ) [ nth ] dip call ; inline
+
+: loop>sequence ( quot exemplar -- seq )
+   [ '[ [ @ [ [ , ] when* ] keep ] loop ] ] dip make ; inline
+
+: loop>array ( quot -- seq )
+   { } loop>sequence ; inline