diff --git a/extra/lcs/lcs.factor b/extra/lcs/lcs.factor index e5155a786e..06c33505ca 100755 --- a/extra/lcs/lcs.factor +++ b/extra/lcs/lcs.factor @@ -56,7 +56,7 @@ TUPLE: trace-state old new table i j ; { [ i>> 0 > ] [ j>> 0 > ] [ [ old-nth ] [ new-nth ] bi = ] - } <-&& ; + } 1&& ; : do-retain ( state -- state ) dup old-nth retain boa , diff --git a/extra/math/text/english/english.factor b/extra/math/text/english/english.factor index 3030f28d04..500e08f79d 100755 --- a/extra/math/text/english/english.factor +++ b/extra/math/text/english/english.factor @@ -26,7 +26,7 @@ IN: math.text.english SYMBOL: and-needed? : set-conjunction ( seq -- ) - first { [ dup 100 < ] [ dup 0 > ] } && and-needed? set drop ; + first { [ dup 100 < ] [ dup 0 > ] } 0&& and-needed? set drop ; : negative-text ( n -- str ) 0 < "Negative " "" ? ; diff --git a/extra/project-euler/014/014.factor b/extra/project-euler/014/014.factor index 32b1aa5549..ef8ef8c0f7 100644 --- a/extra/project-euler/014/014.factor +++ b/extra/project-euler/014/014.factor @@ -59,7 +59,7 @@ PRIVATE> diff --git a/extra/project-euler/021/021.factor b/extra/project-euler/021/021.factor index d8f81717af..e6eadba264 100644 --- a/extra/project-euler/021/021.factor +++ b/extra/project-euler/021/021.factor @@ -27,7 +27,7 @@ IN: project-euler.021 : amicable? ( n -- ? ) dup sum-proper-divisors - { [ 2dup = not ] [ 2dup sum-proper-divisors = ] } && 2nip ; + { [ 2dup = not ] [ 2dup sum-proper-divisors = ] } 0&& 2nip ; : euler021 ( -- answer ) 10000 [1,b] [ dup amicable? [ drop 0 ] unless ] sigma ; diff --git a/extra/project-euler/036/036.factor b/extra/project-euler/036/036.factor index 153901ce6d..fbf6376eb3 100644 --- a/extra/project-euler/036/036.factor +++ b/extra/project-euler/036/036.factor @@ -27,7 +27,7 @@ IN: project-euler.036 : both-bases? ( n -- ? ) { [ dup palindrome? ] - [ dup >bin dup reverse = ] } && nip ; + [ dup >bin dup reverse = ] } 0&& nip ; PRIVATE> diff --git a/extra/project-euler/043/043.factor b/extra/project-euler/043/043.factor index 41e378e531..0c51146656 100644 --- a/extra/project-euler/043/043.factor +++ b/extra/project-euler/043/043.factor @@ -47,7 +47,7 @@ IN: project-euler.043 [ 5 4 pick subseq-divisible? ] [ 3 3 pick subseq-divisible? ] [ 2 2 pick subseq-divisible? ] - } && nip ; + } 0&& nip ; PRIVATE> diff --git a/extra/project-euler/052/052.factor b/extra/project-euler/052/052.factor index 3f6487fb3e..6c4b605bd9 100644 --- a/extra/project-euler/052/052.factor +++ b/extra/project-euler/052/052.factor @@ -29,7 +29,7 @@ IN: project-euler.052 [ number>digits natural-sort ] map all-equal? ; : candidate? ( n -- ? ) - { [ dup odd? ] [ dup 3 mod zero? ] } && nip ; + { [ dup odd? ] [ dup 3 mod zero? ] } 0&& nip ; : next-all-same ( x n -- n ) dup candidate? [ diff --git a/extra/xmode/marker/marker.factor b/extra/xmode/marker/marker.factor index a921e6a022..7d82842327 100755 --- a/extra/xmode/marker/marker.factor +++ b/extra/xmode/marker/marker.factor @@ -19,7 +19,7 @@ strings regexp splitting parser-combinators ascii unicode.case ; dup [ dupd matches? ] [ drop f ] if ] unless* ] - } && nip ; + } 0&& nip ; : mark-number ( keyword -- id ) keyword-number? DIGIT and ; @@ -50,7 +50,7 @@ M: rule match-position drop position get ; [ over matcher-at-line-start? over zero? implies ] [ over matcher-at-whitespace-end? over whitespace-end get = implies ] [ over matcher-at-word-start? over last-offset get = implies ] - } && 2nip ; + } 0&& 2nip ; : rest-of-line ( -- str ) line get position get tail-slice ; @@ -273,7 +273,7 @@ M: mark-previous-rule handle-rule-start [ check-end-delegate ] [ check-every-rule ] [ check-word-break ] - } || drop + } 0|| drop position inc mark-token-loop