HELP: map!
{ $values { "seq" "a mutable sequence" } { "quot" { $quotation ( ... elt -- ... newelt ) } } }
{ $description "Applies the quotation to each element yielding a new element, storing the new elements back in the original sequence. Returns the original sequence." }
+{ $notes "The sequence MUST be resizeable ( see " { $link "vectors" } ")." }
{ $errors "Throws an error if the sequence is immutable, or the sequence cannot hold elements of the type output by " { $snippet "quot" } "." }
{ $side-effects "seq" } ;
HELP: filter!
{ $values { "seq" "a resizable mutable sequence" } { "quot" { $quotation ( ... elt -- ... ? ) } } }
{ $description "Applies the quotation to each element in turn, and removes elements for which the quotation outputs a false value." }
-{ $side-effects "seq" } ;
+{ $notes "The sequence MUST be resizeable ( see " { $link "vectors" } ")." }
+{ $side-effects "seq" }
+{ $examples
+ "Remove the odd numbers"
+ { $example
+ "USING: kernel math prettyprint sequences ;"
+ "V{ 1 2 3 4 5 6 7 8 9 0 } [ odd? not ] filter! ."
+ "V{ 2 4 6 8 0 }"
+ } } ;
+
HELP: reject
{ $values { "seq" sequence } { "quot" { $quotation ( ... elt -- ... ? ) } } { "subseq" "a new sequence" } }
HELP: reject!
{ $values { "seq" "a resizable mutable sequence." } { "quot" { $quotation ( ... elt -- ... ? ) } } }
{ $description "Applies the quotation to each element in turn, and removes elements for which the quotation outputs a true value." }
-{ $notes "seq MUST be resizeable ( see " { $link "vectors" } ")." }
+{ $notes "The sequence MUST be resizeable ( see " { $link "vectors" } ")." }
{ $side-effects "seq" }
{ $examples
"Remove the odd numbers"
{ $example
- "USING: sequences ;"
- "V{ 1 2 3 4 5 6 7 8 9 0 } [ odd? ] reject! . "
- "V{ 2 4 6 }"
+ "USING: math prettyprint sequences ;"
+ "V{ 1 2 3 4 5 6 7 8 9 0 } [ odd? ] reject! ."
+ "V{ 2 4 6 8 0 }"
} } ;
HELP: interleave
HELP: remove!
{ $values { "elt" object } { "seq" "a resizable mutable sequence" } }
{ $description "Removes all elements equal to " { $snippet "elt" } " from " { $snippet "seq" } " and returns " { $snippet "seq" } "." }
+{ $notes "The sequence MUST be resizeable ( see " { $link "vectors" } ")." }
{ $notes "This word uses equality comparison (" { $link = } ")." }
{ $side-effects "seq" } ;
HELP: remove-nth!
{ $values { "n" "a non-negative integer" } { "seq" "a resizable mutable sequence" } }
{ $description "Removes the " { $snippet "n" } "th element from the sequence, shifting all other elements down and reducing its length by one." }
+{ $notes "The sequence MUST be resizeable ( see " { $link "vectors" } ")." }
{ $side-effects "seq" } ;
HELP: delete-slice
HELP: suffix
{ $values { "seq" sequence } { "elt" object } { "newseq" sequence } }
{ $description "Outputs a new sequence obtained by adding " { $snippet "elt" } " at the end of " { $snippet "seq" } "." }
+{ $notes "The sequence MUST be resizeable ( see " { $link "vectors" } ")." }
{ $errors "Throws an error if the type of " { $snippet "elt" } " is not permitted in sequences of the same class as " { $snippet "seq1" } "." }
{ $examples
{ $example "USING: prettyprint sequences ;" "{ 1 2 3 } 4 suffix ." "{ 1 2 3 4 }" }
HELP: suffix!
{ $values { "seq" sequence } { "elt" object } }
{ $description "Modifiers a sequence in-place by adding " { $snippet "elt" } " to the end of " { $snippet "seq" } ". Outputs " { $snippet "seq" } "." }
+{ $notes "The sequence MUST be resizeable ( see " { $link "vectors" } ")." }
{ $errors "Throws an error if the type of " { $snippet "elt" } " is not permitted in sequences of the same class as " { $snippet "seq" } "." }
{ $examples
{ $example "USING: prettyprint sequences ;" "V{ 1 2 3 } 4 suffix! ." "V{ 1 2 3 4 }" }
HELP: append!
{ $values { "seq1" sequence } { "seq2" sequence } }
{ $description "Modifiers " { $snippet "seq1" } " in-place by adding the elements from " { $snippet "seq2" } " to the end and outputs " { $snippet "seq1" } "." }
+{ $notes "The sequence MUST be resizeable ( see " { $link "vectors" } ")." }
{ $examples
{ $example "USING: prettyprint sequences ;" "V{ 1 2 3 } { 4 5 6 } append! ." "V{ 1 2 3 4 5 6 }" }
} ;
HELP: reverse!
{ $values { "seq" "a mutable sequence" } }
{ $description "Reverses a sequence in-place and outputs that sequence." }
+{ $notes "The sequence MUST be resizeable ( see " { $link "vectors" } ")." }
{ $side-effects "seq" } ;
HELP: padding