]> gitweb.factorcode.org Git - factor.git/commitdiff
sequences: rename subsequence? words to subseq? again.
authorDoug Coleman <doug.coleman@gmail.com>
Sun, 31 Jul 2022 15:19:00 +0000 (10:19 -0500)
committerDoug Coleman <doug.coleman@gmail.com>
Sun, 31 Jul 2022 18:26:01 +0000 (13:26 -0500)
50 files changed:
basis/alien/libraries/finder/linux/linux-tests.factor
basis/alien/libraries/finder/linux/linux.factor
basis/alien/libraries/finder/macosx/macosx-tests.factor
basis/alien/libraries/finder/macosx/macosx.factor
basis/alien/libraries/finder/windows/windows-tests.factor
basis/bootstrap/compiler/compiler.factor
basis/compression/gzip/gzip.factor
basis/db/sqlite/sqlite.factor
basis/dns/dns.factor
basis/fixups/fixups.factor
basis/game/input/iokit/iokit.factor
basis/help/html/html.factor
basis/help/lint/checks/checks.factor
basis/help/lint/spaces/spaces.factor
basis/help/search/search.factor
basis/html/templates/fhtml/fhtml.factor
basis/http/client/client-tests.factor
basis/mime/multipart/multipart.factor
basis/models/search/search.factor
basis/multiline/multiline.factor
basis/quoted-printable/quoted-printable-tests.factor
basis/sequences/deep/deep-tests.factor
basis/sequences/deep/deep.factor
basis/tools/test/test-tests.factor
basis/ui/images/images.factor
basis/urls/urls.factor
core/sequences/sequences-docs.factor
core/sequences/sequences.factor
core/splitting/splitting.factor
core/strings/strings-tests.factor
core/system/system-tests.factor
extra/bittorrent/bittorrent.factor
extra/cli/git/git.factor
extra/codebase-analyzer/codebase-analyzer.factor
extra/combinators/extras/extras-tests.factor
extra/gemini/cli/cli.factor
extra/html/parser/analyzer/analyzer.factor
extra/io/encodings/detect/detect.factor
extra/lint/lint.factor
extra/mason/git/git.factor
extra/mediawiki/api/api.factor
extra/metar/metar.factor
extra/modern/slices/slices.factor
extra/project-euler/047/047.factor
extra/rosetta-code/multisplit/multisplit.factor
extra/rosetta-code/text-processing/max-licenses/max-licenses.factor
extra/rosetta-code/web-scraping/web-scraping.factor
extra/sequences/extras/extras.factor
extra/txon/txon.factor
extra/zoneinfo/zoneinfo.factor

index a202743fc705dab1265ad4c246a98720024bfa92..aad51a106747fedf596d335ac98135aa274ceb5f 100644 (file)
@@ -1,4 +1,4 @@
 USING: alien.libraries.finder sequences tools.test ;
 
-{ t } [ "m" find-library "libm.so" subsequence? ] unit-test
-{ t } [ "c" find-library "libc.so" subsequence? ] unit-test
+{ t } [ "m" find-library "libm.so" subseq-index? ] unit-test
+{ t } [ "c" find-library "libc.so" subseq-index? ] unit-test
index d8698ac68494479850cb8e9515a4f3dc849a5c41..881d3f7e70b34f8fddcffa1332cf6d6259c5e512 100644 (file)
@@ -20,7 +20,7 @@ CONSTANT: mach-map {
         [
             " " split1 [ "()" in? ] trim "," split
             [ [ unicode:blank? ] trim ] map
-            [ ": Linux" subsequence? ] reject
+            [ ": Linux" subseq-index? ] reject
         ] dip 3array
     ] map ;
 
@@ -50,7 +50,7 @@ CONSTANT: mach-map {
             "ld" , "-t" , ":" split [ "-L" , , ] each
             "-o" , "/dev/null" , "-l" name append ,
         ] { } make utf8 [ read-lines ] with-process-reader* 2drop
-        "lib" name append '[ _ subsequence? ] find nip
+        "lib" name append '[ _ subseq-index? ] find nip
     ] [ f ] if* ;
 
 PRIVATE>
index e79dbb8f6cb52abe93856776404af8238cccf4e7..c8bd105ccbb51b3cf7aa199f1e1942136ae3b4ac 100644 (file)
@@ -41,7 +41,7 @@ alien.libraries.finder.macosx.private sequences tools.test ;
     } [ dyld-find ] map
 ] unit-test
 
-{ t } [ "m" find-library "libm.dylib" subsequence? ] unit-test
-{ t } [ "c" find-library "libc.dylib" subsequence? ] unit-test
-{ t } [ "bz2" find-library "libbz2.dylib" subsequence? ] unit-test
-{ t } [ "AGL" find-library "AGL.framework" subsequence? ] unit-test
+{ t } [ "m" find-library "libm.dylib" subseq-index? ] unit-test
+{ t } [ "c" find-library "libc.dylib" subseq-index? ] unit-test
+{ t } [ "bz2" find-library "libbz2.dylib" subseq-index? ] unit-test
+{ t } [ "AGL" find-library "AGL.framework" subseq-index? ] unit-test
index 9da349bc8991582929bdf022cdc25703fdf64bd8..1db7b5481e320dfbbdc8e94a1a09f02efb44c531 100644 (file)
@@ -130,7 +130,7 @@ PRIVATE>
 
 : framework-find ( name -- path )
     dup dyld-find [ nip ] [
-        dup ".framework" subsequence-starts [
+        dup ".framework" subseq-index [
             dupd head
         ] [
             [ ".framework" append ] keep
index 6969d528c4070d141681fd1971e29feaa7b7ba01..5f2caaf4e57591542e94ec9b679b88cc664a6ca7 100644 (file)
@@ -1,3 +1,3 @@
 USING: alien.libraries.finder sequences tools.test ;
 
-{ t } [ "kernel32" find-library "kernel32.dll" subsequence? ] unit-test
+{ t } [ "kernel32" find-library "kernel32.dll" subseq-index? ] unit-test
index feb4a5f1f78e1b6e826dd9bb584ec195f21ae479..eff2abfbd050028a18ecc1893673203c56bd8d89 100644 (file)
@@ -89,7 +89,7 @@ gc
     "." write flush
 
     {
-        member-eq? split harvest sift cut cut-slice subseq-start subsequence-starts
+        member-eq? split harvest sift cut cut-slice subseq-start subseq-index
         index clone set-at reverse push-all class-of number>string string>number
         like clone-like
     } compile-unoptimized
index cf8332397b1ded56873ddfc5d995ec9109c882e5..8c281375acf7f45760d1b9c4b81850be07397ff2 100644 (file)
@@ -16,7 +16,7 @@ SYMBOL: lit-vec
 :: longest-prefix ( ind seq -- start end )
     ind dup ind + seq length min [a..b]
     seq ind head-slice '[
-        [ _ ] dip ind swap seq <slice> subsequence-starts
+        [ _ ] dip ind swap seq <slice> subseq-index
     ] map-find-last ;
 
 :: create-pair ( ind seq -- array )
index dc0e0fd590cb4c0540ebd8c2bba0a71ed8899a86..2aea3e1fb1281e28f9ec8a9e817f81ea5fd9e3f0 100644 (file)
@@ -260,7 +260,7 @@ M: sqlite-db-connection persistent-table
     "sql-spec" get modifiers>> [ +not-null+ = ] none? ;
 
 : delete-cascade? ( -- ? )
-    "sql-spec" get modifiers>> { +on-delete+ +cascade+ } subsequence? ;
+    "sql-spec" get modifiers>> { +on-delete+ +cascade+ } subseq-index? ;
 
 : sqlite-trigger, ( string -- )
     { } { } <simple-statement> 3, ;
index 11620c2b023d620e8fe1afd42d5e0e343476b6bd..9f0db9ad2c6269aaa72780ca1b80bcf3fe4b13ea 100644 (file)
@@ -58,7 +58,7 @@ SYMBOL: dns-servers
 ERROR: domain-name-contains-empty-label domain ;
 
 : check-domain-name ( domain -- domain )
-    dup ".." subsequence? [ domain-name-contains-empty-label ] when ;
+    dup ".." subseq-index? [ domain-name-contains-empty-label ] when ;
 
 : >dotted ( domain -- domain' )
     dup "." tail? [ "." append ] unless ;
index 77e69dc0344c61b0202d4b5123ded9bdfe101001..feb0e75a11956d052c7a849a8e19657027e41e8f 100644 (file)
@@ -48,7 +48,7 @@ CONSTANT: word-renames {
     { "(all-integers?)" { "all-integers-from?" "0.99" } }
     { "short" { "bound" "0.99" } }
     { "map-integers" { "map-integers-as" "0.99" } }
-    { "deep-subseq?" { "deep-subsequence?" "0.99" } }
+    { "deep-subseq?" { "deep-subseq-index?" "0.99" } }
 }
 
 : compute-assoc-fixups ( continuation name assoc -- seq )
index 3130e9451961ff6f8befbb933fafd2912a4b9dc4..133f0b39b15900a29d0470816093e9e383652937 100644 (file)
@@ -338,7 +338,7 @@ M: iokit-game-input-backend get-controllers
     +controller-states+ get-global keys [ controller boa ] map ;
 
 : ?glue ( seq subseq sep -- string )
-    2over subsequence-starts [ drop nip ] [ glue ] if ;
+    2over subseq-index [ drop nip ] [ glue ] if ;
 
 M: iokit-game-input-backend product-string
     handle>>
index caf2c6301f8eb10c63348b8cc09acd3ce06de989..47ada7afd6171e988437c4febdc6fc9f45942d1a 100644 (file)
@@ -140,17 +140,17 @@ M: pathname url-of
         " white-space: pre-wrap; line-height: 125%;" append
     ] re-replace-with
 
-    dup { "font-family: monospace;" "background-color:" } [ subsequence? ] with all? [
+    dup { "font-family: monospace;" "background-color:" } [ subseq-index? ] with all? [
         " margin: 10px 0px;" append
     ] when
 
-    dup { "border:" "background-color:" } [ subsequence? ] with all? [
+    dup { "border:" "background-color:" } [ subseq-index? ] with all? [
         " border-radius: 5px;" append
     ] when ;
 
 : fix-help-header ( classes -- classes )
     dup [
-        [ ".a" head? ] [ "#f4efd9;" subsequence? ] bi and
+        [ ".a" head? ] [ "#f4efd9;" subseq-index? ] bi and
     ] find [
         "padding: 10px;" "padding: 0px;" replace
         "background-color: #f4efd9;" "background-color: white;" replace
@@ -188,7 +188,7 @@ M: pathname url-of
                 ] re-replace-with
             ] map " " join "{ " " }" surround
         ] re-replace-with "    " prepend
-        dup "{  }" subsequence? [ drop f ] when
+        dup "{  }" subseq-index? [ drop f ] when
     ] map harvest append "}" suffix ;
 
 : css-classes ( classes -- stylesheet )
@@ -215,7 +215,7 @@ M: pathname url-of
     ] each classes sort-values css-classes body ;
 
 : retina-image ( path -- path' )
-    dup "@2x" subsequence? [ "." split1-last "@2x." glue ] unless ;
+    dup "@2x" subseq-index? [ "." split1-last "@2x." glue ] unless ;
 
 : ?copy-file ( from to -- )
     dup file-exists? [ 2drop ] [ copy-file ] if ;
index 0ccc19b9115249b62df962b3c4b9b5e55ee9c42f..8355c224768f18a78a67d0ac52fe026c62c6480f 100644 (file)
@@ -152,7 +152,7 @@ SYMBOL: vocab-articles
             simple-lint-error
         ] when
     ] [
-        "  " subsequence? [
+        "  " subseq-index? [
             "Paragraph text should not contain double spaces"
             simple-lint-error
         ] when
index bdb1c6c2faccadb44e02e9a486ffdfd3c17c5809..3411fb7ec09d867dcc585bd8527823e4d7da3fad 100644 (file)
@@ -18,7 +18,7 @@ IN: help.lint.spaces
             first [
                 { [ CHAR: space = ] [ CHAR: " = ] } 1||
             ] trim-head
-            "  " subsequence?
+            "  " subseq-index?
         ] filter
         [ drop ] [
             swap <pathname> .
index 00a922558ba8bac4a9232eb360f55f91729d786e..90713abae19ed1e37a9359015ea8ec43b5b8c834 100644 (file)
@@ -37,7 +37,7 @@ MEMO: article-words ( name -- words )
     search-words [ { } ] [
         [ all-articles ] dip
         dup length 1 > [
-            '[ article-words _ subsequence? ] filter
+            '[ article-words _ subseq-index? ] filter
         ] [
             first '[ article-words [ _ head? ] any? ] filter
         ] if
index 8d64ef8e71c69e41842560407bea991faf14a374..b5b48dc4e310f9ee900e03e24109cbcf9748f0ed 100644 (file)
@@ -23,7 +23,7 @@ M: template-lexer skip-word
 DEFER: <% delimiter
 
 : check-<% ( lexer -- col )
-    [ column>> ] [ line-text>> ] bi "<%" subsequence-starts-from ;
+    [ column>> ] [ line-text>> ] bi "<%" subseq-index-from ;
 
 : found-<% ( accum lexer col -- accum )
     [
index cf805380cc8c81f8b408ab404892f9348dd010d2..f792d3491a66e7b59b1c10fdac3912b02bbc9a95 100644 (file)
@@ -48,8 +48,8 @@ IN: http.client.tests
 ! hit the velox.ch website.
 ! { t } [
     ! "https://alice.sni.velox.ch" http-get nip
-    ! [ "Great!" subsequence? ]
-    ! [ "TLS SNI Test Site: alice.sni.velox.ch" subsequence? ] bi and
+    ! [ "Great!" subseq-index? ]
+    ! [ "TLS SNI Test Site: alice.sni.velox.ch" subseq-index? ] bi and
 ! ] unit-test
 
 { t } [
index 9a6bc0044da690df12390eca8a1d5c9fe999c7ef..6243112315978607b36b0c1d50bff751e298100e 100644 (file)
@@ -42,14 +42,13 @@ C: <mime-variable> mime-variable
 
 ERROR: mime-decoding-ran-out-of-bytes ;
 : dump-until-separator ( multipart -- multipart )
-    [ ] [ bytes>> ] [ current-separator>> ] tri
-    over [ mime-decoding-ran-out-of-bytes ] unless
-    2dup subsequence-starts [
-        swapd cut-slice
+    [ ] [ current-separator>> ] [ bytes>> ] tri
+    dup [ mime-decoding-ran-out-of-bytes ] unless
+    2dup swap subseq-index [
+        cut-slice
         [ mime-write ]
         [ swap length tail-slice >>bytes ] bi*
     ] [
-        swap
         tuck [ length ] bi@ - 1 - cut-slice
         [ mime-write ]
         [ >>bytes ] bi* fill-bytes
index cb62fa636f51c0abe23ba306fd5ff0a8ec3f86ac..b2ce1efc53f07bc3b9e2811921f5332da4c701b5 100644 (file)
@@ -7,4 +7,4 @@ IN: models.search
     '[ _ curry filter ] <smart-arrow> ; inline
 
 : <string-search> ( values search quot -- model )
-    '[ @ [ >case-fold ] bi@ subsequence? ] <search> ; inline
+    '[ @ [ >case-fold ] bi@ subseq-index? ] <search> ; inline
index a239d1089717f121e02a375c76bc928fa7cb69eb..cd33adc9bed15bfeed6982090d646bc5967a301a 100644 (file)
@@ -41,7 +41,7 @@ SYNTAX: STRING:
 :: (scan-multiline-string) ( i end lexer -- j )
     lexer line-text>> :> text
     lexer still-parsing? [
-        i text end subsequence-starts-from [| j |
+        i text end subseq-index-from [| j |
             i j text subseq % j end length +
         ] [
             text i bound tail % CHAR: \n ,
index 71a800b299f2c82edbb54b873921d85addce727c..049d2b326b56dab64759633ce623ab4c3a9b32f2 100644 (file)
@@ -23,8 +23,8 @@ and we didn't know hów tö do thât" latin2 encode >quoted ] unit-test
 : message ( -- str )
     55 [ "hello" ] replicate concat ;
 
-{ f } [ message >quoted "=\r\n" subsequence? ] unit-test
+{ f } [ message >quoted "=\r\n" subseq-index? ] unit-test
 { 1 } [ message >quoted split-lines length ] unit-test
-{ t } [ message >quoted-lines "=\r\n" subsequence? ] unit-test
+{ t } [ message >quoted-lines "=\r\n" subseq-index? ] unit-test
 { 4 } [ message >quoted-lines split-lines length ] unit-test
 { "===o" } [ message >quoted-lines split-lines [ last ] "" map-as ] unit-test
index 86ace723941e7910c526aaffd397c3e093241c80..e1b8b6efdfa17e25caa63252fe291a4450d450b9 100644 (file)
@@ -34,13 +34,13 @@ IN: sequences.deep.tests
 [ { { 1 2 3 } 4 } { { { 1 2 3 } 4 } 2 } deep-member? ] unit-test
 
 { f }
-[ { 1 2 3 { 4 } } { 1 2 3 4 } deep-subsequence? ] unit-test
+[ { 1 2 3 { 4 } } { 1 2 3 4 } deep-subseq-index? ] unit-test
 
 { t }
-[ { 1 2 3 4 } { 1 2 3 4 } deep-subsequence? ] unit-test
+[ { 1 2 3 4 } { 1 2 3 4 } deep-subseq-index? ] unit-test
 
 { t }
-[ { { 1 2 3 4 } } { 1 2 3 4 } deep-subsequence? ] unit-test
+[ { { 1 2 3 4 } } { 1 2 3 4 } deep-subseq-index? ] unit-test
 
 { 3 } [
     { 1 { 2 3 { 4 } } 5 { { 6 } 7 } } 0 [
index b376bc116f882b131cfa005c1b1aa324f913ac7b..a006d08b3d9842321dbd55c5f799e0b202f124eb 100644 (file)
@@ -54,9 +54,9 @@ M: object branch? drop f ;
         _ swap dup branch? [ member? ] [ 2drop f ] if
     ] deep-find >boolean ;
 
-: deep-subsequence? ( seq subseq -- ? )
+: deep-subseq-index? ( seq subseq -- ? )
    '[
-        _ over branch? [ subsequence? ] [ 2drop f ] if
+        _ over branch? [ subseq-index? ] [ 2drop f ] if
     ] deep-find >boolean ;
 
 : deep-map! ( ... obj quot: ( ... elt -- ... elt' ) -- ... obj )
index c5f815aaf9b2e6ac9625f985c231f188c5c8e96d..4fe22334d78adcac380c9215536d62e1a87a5e3f 100644 (file)
@@ -16,5 +16,5 @@ sequences tools.test tools.test.private ;
 ! Just verifies that the presented output contains a callstack.
 { t } [
     create-test-failure [ error. ] with-string-writer
-    "OBJ-CURRENT-THREAD" subsequence?
+    "OBJ-CURRENT-THREAD" subseq-index?
 ] unit-test
index 20a4e6109b208c6a93c12ee8b2cc788dd27caa35..de9c6eee73ed56b489def6ed2a78c09619336310 100644 (file)
@@ -12,7 +12,7 @@ C: <image-name> image-name
 <PRIVATE
 
 MEMO: cached-image-path ( path -- image )
-    [ load-image ] [ "@2x" subsequence? >>2x? ] bi ;
+    [ load-image ] [ "@2x" subseq-index? >>2x? ] bi ;
 
 PRIVATE>
 
index 30f06abdc8304b0a5595c82c6ad7d867883fc933..b9f23f4641dbad41de27623031aea272a80773c4 100644 (file)
@@ -164,7 +164,7 @@ PRIVATE>
         { [ dup "/" head? ] [ nip ] }
         { [ dup empty? ] [ drop ] }
         { [ over "/" tail? ] [ append ] }
-        { [ over "/" subsequence-starts not ] [ nip ] }
+        { [ over "/" subseq-index not ] [ nip ] }
         [ [ "/" split1-last drop "/" ] dip 3append ]
     } cond remove-dot-segments ;
 
index 5f9c5f15805067550b9a10e4b6a6deaebc81166a..54e7d705b755d7323d583b251d3c55dc695802b3 100644 (file)
@@ -1194,11 +1194,11 @@ HELP: subseq-starts-at?
 { $values { "i" "a start index" } { "seq" sequence } { "subseq" sequence } { "?" boolean } }
 { $description "Outputs " { $snippet "t" } " if the subseq starts at the " { $snippet "i" } "th element or outputs " { $link f } " if the sequence is not at that position." } ;
 
-HELP: subsequence-starts
+HELP: subseq-index
 { $values { "seq" sequence } { "subseq" sequence } { "i/f" "a start index or " { $snippet "f" } } }
 { $description "Outputs the start index of the first contiguous subsequence equal to " { $snippet "subseq" } ", starting the search from the " { $snippet "n" } "th element. If no matching subsequence is found, outputs " { $link f } "." } ;
 
-HELP: subsequence-starts-from
+HELP: subseq-index-from
 { $values { "n" "a start index" } { "seq" sequence } { "subseq" sequence } { "i/f" "a start index or " { $snippet "f" } } }
 { $description "Outputs the start index of the first contiguous subsequence equal to " { $snippet "subseq" } ", starting the search from the " { $snippet "n" } "th element. If no matching subsequence is found, outputs " { $link f } "." } ;
 
@@ -1947,8 +1947,8 @@ ARTICLE: "sequences-search" "Searching sequences"
 "Finding the start of a subsequence:"
 { $subsections
     subseq-start
-    subsequence-starts
-    subsequence-starts-from
+    subseq-index
+    subseq-index-from
     subseq-starts-at?
 }
 "Finding the index of an element satisfying a predicate:"
index 1dbdfa1dc360d278b324bd62115c39520edfd7d4..213b2f95f040e94f026b0d993786ca4f97d3ee0f 100644 (file)
@@ -1057,17 +1057,20 @@ PRIVATE>
         [ + _ nth-unsafe ] keep _ nth-unsafe =
     ] with all-integers? ; inline
 
-: subsequence-starts-from ( n seq subseq -- i/f )
+: subseq-index-from ( n seq subseq -- i/f )
     [ [ length ] bi@ - 1 + ] 2keep
     '[ _ _ subseq-starts-at? ] find-integer-from ; inline
 
-: subsequence-starts ( seq subseq -- i/f ) [ 0 ] 2dip subsequence-starts-from ; inline
+: subseq-index ( seq subseq -- i/f ) [ 0 ] 2dip subseq-index-from ; inline
 
-: subsequence? ( seq subseq -- ? ) subsequence-starts >boolean ; inline
+: subseq-index? ( seq subseq -- ? ) subseq-index >boolean ; inline
 
-: subseq-start ( subseq seq -- i/f ) swap subsequence-starts ; inline
+: subseq-start-from ( subseq seq n -- i/f )
+    spin subseq-index-from ; inline deprecated
 
-: subseq? ( subseq seq -- ? ) subseq-start >boolean ; inline
+: subseq-start ( subseq seq -- i/f ) swap subseq-index ; inline deprecated
+
+: subseq? ( subseq seq -- ? ) subseq-start >boolean ; inline deprecated
 
 : drop-prefix ( seq1 seq2 -- slice1 slice2 )
     2dup mismatch [ 2dup min-length ] unless*
index 42a1aaeb922e081d005e482a0ea116bf6eeec18c..c65835861318634a8c9f79794840bd29caf5b1c3 100644 (file)
@@ -28,7 +28,7 @@ PRIVATE>
 <PRIVATE
 
 : subseq-range ( seq subseq -- from/f to/f )
-    [ subsequence-starts ] keep '[ dup _ length + ] [ f f ] if* ; inline
+    [ subseq-index ] keep '[ dup _ length + ] [ f f ] if* ; inline
 
 : (split1) ( seq subseq snip-quot -- before after )
     [ [ subseq-range ] keepd over ] dip [ 2nip f ] if ; inline
index b6c232f9e4dd944351202ff3a83b25abe7fadf35..8ed0c9c264be5816575a946bb49874d4d0f88dbb 100644 (file)
@@ -21,22 +21,22 @@ vectors ;
 { f } [ "amigo" "hola" subseq-start ] unit-test
 { f } [ "holaa" "hola" subseq-start ] unit-test
 
-{ 3 } [ "hola" "a" subsequence-starts ] unit-test
-{ f } [ "hola" "x" subsequence-starts ] unit-test
-{ 0 } [ "a" "" subsequence-starts ] unit-test
-{ 0 } [ "" "" subsequence-starts ] unit-test
-{ 0 } [ "hola" "hola" subsequence-starts ] unit-test
-{ 1 } [ "hola" "ol" subsequence-starts ] unit-test
-{ f } [ "hola" "amigo" subsequence-starts ] unit-test
-{ f } [ "hola" "holaa" subsequence-starts ] unit-test
+{ 3 } [ "hola" "a" subseq-index ] unit-test
+{ f } [ "hola" "x" subseq-index ] unit-test
+{ 0 } [ "a" "" subseq-index ] unit-test
+{ 0 } [ "" "" subseq-index ] unit-test
+{ 0 } [ "hola" "hola" subseq-index ] unit-test
+{ 1 } [ "hola" "ol" subseq-index ] unit-test
+{ f } [ "hola" "amigo" subseq-index ] unit-test
+{ f } [ "hola" "holaa" subseq-index ] unit-test
 
 { "Beginning" } [ "Beginning and end" 9 head ] unit-test
 
 { f } [ CHAR: I "team" member? ] unit-test
 { t } [ "ea" "team" subseq? ] unit-test
 { f } [ "actore" "Factor" subseq? ] unit-test
-{ t } [ "team" "ea" subsequence? ] unit-test
-{ f } [ "Factor" "actore" subsequence? ] unit-test
+{ t } [ "team" "ea" subseq-index? ] unit-test
+{ f } [ "Factor" "actore" subseq-index? ] unit-test
 
 { "end" } [ "Beginning and end" 14 tail ] unit-test
 
index 227893e307b6ee6499a5bec1d89ca379b39145a3..1deb4c183fb8dda012f0ea9860836d40756f4b28 100644 (file)
@@ -3,5 +3,5 @@ USING: arrays sequences system tools.test ;
 { { t t t } } [
     version-info
     vm-version vm-compiler vm-compile-time 3array
-    [ subsequence? ] with map
+    [ subseq-index? ] with map
 ] unit-test
index dad0fff281f907e3c199e6b7491eb0654755f593..b46b00ad8094f86ed1b658965b4c8b58421e7806 100644 (file)
@@ -73,7 +73,7 @@ M: string load-metainfo
     dup "announce-list" of [ nip first random ] [ "announce" of ] if* ;
 
 : scrape-url ( metainfo -- url/f )
-    announce-url dup path>>  "announce" subsequence? [
+    announce-url dup path>>  "announce" subseq-index? [
         [ "announce" "scrape" replace ] change-path
     ] [ drop f ] if ;
 
index b4d77105b67652512ec73bc6f57d6dc908291eb2..67b63b7e308a5c9093849f375f6295029d3f56ad 100644 (file)
@@ -63,4 +63,4 @@ cli-git-num-parallel [ cpus 2 * ] initialize
 
 : directory-entries-without-git ( directory -- entries )
     recursive-directory-entries
-    [ name>> "/.git/" subsequence? ] reject ;
\ No newline at end of file
+    [ name>> "/.git/" subseq-index? ] reject ;
\ No newline at end of file
index 84c1ac5541770aa52db2795a6ed18ddd692c3900..c0b4226265055c5e9f93b81fddb639092c47cfdf 100644 (file)
@@ -23,10 +23,10 @@ IN: codebase-analyzer
     [ has-file-extension? ] filter ;
 
 : without-git-paths ( paths -- paths' )
-    [ "/.git/" subsequence? ] reject ;
+    [ "/.git/" subseq-index? ] reject ;
 
 : without-node-modules-paths ( paths -- paths' )
-    [ "/node_modules/" subsequence? ] reject ;
+    [ "/node_modules/" subseq-index? ] reject ;
 
 : regular-directory-files ( path -- seq )
     recursive-directory-files
index 506dedb3155def7e26116a9485cb98069951dd43..0f70125a27691f02386083e1a8682117e9e63bbf 100644 (file)
@@ -65,23 +65,23 @@ IN: combinators.extras.tests
 
 { "hi " "there" } [
     "hi there" {
-        { [ dup "there" subsequence-starts ] [ cut ] }
+        { [ dup "there" subseq-index ] [ cut ] }
         [ f ]
     } cond*
 ] unit-test
 
 { "hi " "there" } [
     "hi there" {
-        { [ dup "foo" subsequence-starts ] [ head f ] }
-        { [ dup "there" subsequence-starts ] [ cut ] }
+        { [ dup "foo" subseq-index ] [ head f ] }
+        { [ dup "there" subseq-index ] [ cut ] }
         [ f ]
     } cond*
 ] unit-test
 
 { "hi there" f } [
     "hi there" {
-        { [ dup "foo" subsequence-starts ] [ head f ] }
-        { [ dup "bar" subsequence-starts ] [ cut ] }
+        { [ dup "foo" subseq-index ] [ head f ] }
+        { [ dup "bar" subseq-index ] [ cut ] }
         [ f ]
     } cond*
 ] unit-test
index 708087c42c3aca581bed89f8d965265ca0fe9499..16b2b31109d61bccd6b8e5c94b206ed971c803f6 100644 (file)
@@ -101,7 +101,7 @@ CONSTANT: URL V{ }
 
 : gemini-go ( args -- )
     present [ DEFAULT-URL ] when-empty
-    { [ dup "://" subsequence? ] [ "gemini://" head? ] } 1||
+    { [ dup "://" subseq-index? ] [ "gemini://" head? ] } 1||
     [ "gemini://" prepend ] unless
     dup "gemini://" head? [
         [ add-history ] [ add-stack ] [ gemini-get ] tri
index 112545e2c71668b8655e62142566bf54e6d6a3ce..ceb4086b06b890d18cd4215c11e35b7e02661e43 100644 (file)
@@ -142,7 +142,7 @@ ERROR: undefined-find-nth m n seq quot ;
     [ { [ name>> = ] [ closing?>> not ] } 1&& ] with find-all ;
 
 : href-contains? ( str tag -- ? )
-    "href" attribute* [ swap subsequence? ] [ 2drop f ] if ;
+    "href" attribute* [ swap subseq-index? ] [ 2drop f ] if ;
 
 : find-hrefs ( vector -- vector' )
     [ { [ name>> "a" = ] [ "href" attribute? ] } 1&& ] filter sift
index 6c31362da97a3a3c90450fd7bebce3955fcf0e4f..3e529166a402494b8ffef8f9e3b2237a2fa48901 100644 (file)
@@ -17,7 +17,7 @@ default-encoding [ latin1 ] initialize
 
 : prolog-encoding ( string -- iana-encoding )
     '[
-        _ dup "encoding=" subsequence-starts
+        _ dup "encoding=" subseq-index
         10 + swap [ [ 1 - ] dip nth ] [ index-from ] [ swapd subseq ] 2tri
     ] [ drop "UTF-8" ] recover ;
 
index 034a81ac8547956899b55552afcf0ced235c76f8..7f925fa9bee313f1a65dd8fb20fb3b8610f8e6b8 100644 (file)
@@ -249,7 +249,7 @@ GENERIC: lint ( obj -- seq )
 M: object lint ( obj -- seq ) drop f ;
 
 M: callable lint ( quot -- seq )
-    lint-definitions-keys get-global [ subsequence? ] with filter ;
+    lint-definitions-keys get-global [ subseq-index? ] with filter ;
 
 M: word lint ( word -- seq/f )
     def>> [ callable? ] deep-filter [ lint ] map concat ;
index 57cf57bba75ae31b4dee6c76e1e05be3a02a6357..9dcac4048db84f823b95b4a735b937ac7918e12c 100644 (file)
@@ -47,7 +47,7 @@ IN: mason.git
 
 : git-pull-failed ( error -- )
     dup output-process-error? [
-        dup output>> "not uptodate. Cannot merge." subsequence?
+        dup output>> "not uptodate. Cannot merge." subseq-index?
         [ git-repo-corrupted ]
         [ rethrow ]
         if
index 92c28132a1d1e9137412b5807b185e732d1bc0d5..8ad8e3d92a43956c4293625bacd9b6bcf5541d9f 100644 (file)
@@ -104,7 +104,7 @@ t botflag set-global
 : nonce-already-used? ( assoc -- ? )
     "error" of
     [ "code" of "mwoauth-invalid-authorization" = ]
-    [ "info" of "Nonce already used" subsequence-starts ] bi
+    [ "info" of "Nonce already used" subseq-index ] bi
     and ;
 
 : readonly? ( assoc -- ? )
index c228fa9b9b1d630b577c8ce9b69d02fef5514978..d54c8c2c78d4eec541bf8b85fa6ff6658181f7f4 100644 (file)
@@ -282,7 +282,7 @@ CONSTANT: compass-directions H{
     ] if ;
 
 : parse-weather ( str -- str' )
-    dup "VC" subsequence? [ "VC" "" replace t ] [ f ] if
+    dup "VC" subseq-index? [ "VC" "" replace t ] [ f ] if
     [ (parse-weather) ]
     [ [ " in the vicinity" append ] when ] bi* ;
 
index 6740e02d15057b689dad15af75d1754d05b1fbfd..ff1a54b511ef84b30540d2c3e56502dafe5ee5f6 100644 (file)
@@ -182,7 +182,7 @@ ERROR: expected-sequence-error expected actual ;
 ERROR: subseq-expected-but-got-eof n string expected ;
 
 :: slice-til-string ( n string search --  n' string payload end-string )
-    n string search subsequence-starts-from :> n'
+    n string search subseq-index-from :> n'
     n' [ n string search subseq-expected-but-got-eof ] unless
     n' search length + string
     n n' string ?<slice>
index 601682c3de636c6b1c2f6646ba628e9aec7f7210..e5e94560d6a653efbf4bbf75b2b816f253326021 100644 (file)
@@ -80,7 +80,7 @@ SYMBOL: sieve
     ] each sieve get ;
 
 : consecutive-under ( limit m -- n/f )
-   [ prime-tau-upto ] [ dup <repetition> ] bi* subsequence-starts ;
+   [ prime-tau-upto ] [ dup <repetition> ] bi* subseq-index ;
 
 PRIVATE>
 
index 3437741229f4cbba1a829b1265e4b2bdfde227b2..1097fa85a0a026e6353cd9bed638447d93fb4921 100644 (file)
@@ -6,7 +6,7 @@ IN: rosetta-code.multisplit
 
 : first-subseq ( seq separators -- n separator )
     tuck
-    [ [ subsequence-starts ] dip 2array ] withd map-index sift-keys
+    [ [ subseq-index ] dip 2array ] withd map-index sift-keys
     [ drop f f ] [ [ first ] infimum-by first2 rot nth ] if-empty ;
 
 : multisplit ( string separators -- seq )
index dd064e580fd54086af3bd2f866de1d83e2877c45..4bf895ccbaae11281b71416b70156cd0cabb3cc6 100644 (file)
@@ -32,7 +32,7 @@ TUPLE: maxlicense max-count current-count times ;
 
 : <maxlicense> ( -- max ) -1 0 V{ } clone \ maxlicense boa ; inline
 
-: out? ( line -- ? ) "OUT" subsequence? ; inline
+: out? ( line -- ? ) "OUT" subseq-index? ; inline
 
 : line-time ( line -- time ) split-words harvest fourth ; inline
 
index 02363523271905d5e3068ce8c588530c1f7323e9..7a71e19b51887e20a6d3c4a03ca72b3bf9c6513b 100644 (file)
@@ -16,6 +16,6 @@ IN: rosetta-code.web-scraping
 
 : web-scraping-main ( -- )
     "http://tycho.usno.navy.mil/cgi-bin/timer.pl" http-get nip
-    [ "UTC" subsequence-starts [ 9 - ] [ 1 - ] bi ] keep subseq print ;
+    [ "UTC" subseq-index [ 9 - ] [ 1 - ] bi ] keep subseq print ;
 
 MAIN: web-scraping-main
index 3d17c3e7556b62ece0a4897630cd22e7ffc36624..e26bbb2ad787315b54d8299037f264e279c0d8e8 100644 (file)
@@ -662,7 +662,7 @@ PRIVATE>
 
 :: (start-all) ( seq subseq increment -- indices )
     0
-    [ seq subseq subsequence-starts-from dup ]
+    [ seq subseq subseq-index-from dup ]
     [ [ increment + ] keep ] produce nip ;
 
 : start-all ( seq subseq -- indices )
index 2b9110e47ede29dc7dc599aa03ab73bc05862ca3..f384bbb62d705c7e3f3c1116e94cfbb5e471ea33 100644 (file)
@@ -42,7 +42,7 @@ DEFER: name/values
 
 : name=value ( string -- remain term )
     [ unicode:blank? ] trim
-    dup ":`" subsequence? [ (name=value) ] [ f swap ] if ;
+    dup ":`" subseq-index? [ (name=value) ] [ f swap ] if ;
 
 : name/values ( string -- remain terms )
     [ dup { [ empty? not ] [ first CHAR: ` = not ] } 1&& ]
index 3feff6c524168d42b4e85db6650148fa8834d1ac..96aed5d375cf05830483e2892b7f2e766403e004 100644 (file)
@@ -147,7 +147,7 @@ MEMO: zoneinfo-assoc ( -- assoc )
 
 : zoneinfo-zones ( -- seq )
     raw-zone-map keys
-    [ "/" subsequence? ] partition
+    [ "/" subseq-index? ] partition
     [ natural-sort ] bi@ append ;
 
 GENERIC: zone-matches? ( string rule -- ? )
@@ -232,8 +232,8 @@ ERROR: unknown-day-abbrev day ;
 
 : comparison-day-string ( timestamp string -- timestamp )
     {
-        { [ dup ">=" subsequence? ] [ ">=" split1 swap [ string>number >>day ] dip day-abbrev>= ] }
-        { [ dup "<=" subsequence? ] [ "<=" split1 swap [ string>number >>day ] dip day-abbrev<= ] }
+        { [ dup ">=" subseq-index? ] [ ">=" split1 swap [ string>number >>day ] dip day-abbrev>= ] }
+        { [ dup "<=" subseq-index? ] [ "<=" split1 swap [ string>number >>day ] dip day-abbrev<= ] }
         [ string>number >>day ]
     } cond ;