]> gitweb.factorcode.org Git - factor.git/commitdiff
Merge branch 'master' of git://factorcode.org/git/factor
authorDaniel Ehrenberg <littledan@pool-226-177.res.carleton.edu>
Mon, 26 May 2008 01:33:56 +0000 (20:33 -0500)
committerDaniel Ehrenberg <littledan@pool-226-177.res.carleton.edu>
Mon, 26 May 2008 01:33:56 +0000 (20:33 -0500)
Conflicts:

extra/sequences/lib/lib-tests.factor
extra/sequences/lib/lib.factor

1  2 
extra/sequences/lib/lib-tests.factor
extra/sequences/lib/lib.factor

index 914cb6465dceb3cba637e593104ece784173782b,019796c1a11856c8ac3aea4345c6013e881860e2..7a941b160a2ab41c17525ffbc77cf17575feec01
@@@ -80,4 -80,8 +80,12 @@@ IN: sequences.lib.test
  [ ] [ { } 0 firstn ] unit-test
  [ "a" ] [ { "a" } 1 firstn ] unit-test
  
++<<<<<<< HEAD:extra/sequences/lib/lib-tests.factor
 +[ { { 1 1 } { 1 2 } { 2 0 } } ] [ { { 2 0 } { 1 1 } { 1 2 } } dup [ first ] insertion-sort ] unit-test
++=======
+ [ "empty" ] [ { } [ "not empty" ] [ "empty" ] if-seq ] unit-test
+ [ { 1 } "not empty" ] [ { 1 } [ "not empty" ] [ "empty" ] if-seq ] unit-test
+ [ "empty" ] [ { } [ "empty" ] [ "not empty" ] if-empty ] unit-test
+ [ { 1 } "not empty" ] [ { 1 } [ "empty" ] [ "not empty" ] if-empty ] unit-test
++>>>>>>> 299bb1fb1692a4427f5b46f70dbbcefd6aa57163:extra/sequences/lib/lib-tests.factor
index ac12505771650d4d518c68dfd362cc65f534b6c9,b26acbc54495e4d4ae73b758a11ee17ba9d49c7e..5c34b7315b10b64d620451e1689fa82e3727e58a
@@@ -244,16 -244,8 +244,22 @@@ PRIVATE
  : short ( seq n -- seq n' )
      over length min ; inline
  
 +<PRIVATE
 +:: insert ( seq quot n -- )
 +    n zero? [
 +        n n 1- [ seq nth quot call ] bi@ >= [
 +            n n 1- seq exchange
 +            seq quot n 1- insert
 +        ] unless
 +    ] unless ; inline
 +PRIVATE>
 +
 +: insertion-sort ( seq quot -- )
 +    ! quot is a transformation on elements
 +    over length [ insert ] 2with each ; inline
++
+ : if-seq ( seq quot1 quot2 -- )
+     [ f like ] 2dip if* ; inline
+ : if-empty ( seq quot1 quot2 -- )
+     swap if-seq ; inline