clump: fix empty sequence input. rephrase docs a bit
							parent
							
								
									2fc1442771
								
							
						
					
					
						commit
						7b7586fa54
					
				| 
						 | 
					@ -117,7 +117,7 @@ $nl
 | 
				
			||||||
HELP: clump
 | 
					HELP: clump
 | 
				
			||||||
{ $values { "seq" "a sequence" } { "n" "a non-negative integer" } { "array" "a sequence of sequences" } }
 | 
					{ $values { "seq" "a sequence" } { "n" "a non-negative integer" } { "array" "a sequence of sequences" } }
 | 
				
			||||||
{ $description "Splits the sequence into overlapping clumps of " { $snippet "n" } " elements and collects the clumps into a new array." }
 | 
					{ $description "Splits the sequence into overlapping clumps of " { $snippet "n" } " elements and collects the clumps into a new array." }
 | 
				
			||||||
{ $notes "If the sequence length is smaller than " { $snippet "n" } ", the result will be an array with one element: the original sequence " { $snippet "seq" } "." }
 | 
					{ $notes "For an empty sequence, the result is an empty sequence. For a non empty sequence with a length smaller than " { $snippet "n" } ", the result will be a sequence with one element: the input sequence " { $snippet "seq" } "." }
 | 
				
			||||||
{ $examples
 | 
					{ $examples
 | 
				
			||||||
    { $example "USING: grouping prettyprint ;" "{ 3 1 3 3 7 } 2 clump ." "{ { 3 1 } { 1 3 } { 3 3 } { 3 7 } }" }
 | 
					    { $example "USING: grouping prettyprint ;" "{ 3 1 3 3 7 } 2 clump ." "{ { 3 1 } { 1 3 } { 3 3 } { 3 7 } }" }
 | 
				
			||||||
} ;
 | 
					} ;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -44,7 +44,9 @@ MIXIN: abstract-clumps
 | 
				
			||||||
INSTANCE: abstract-clumps sequence
 | 
					INSTANCE: abstract-clumps sequence
 | 
				
			||||||
 | 
					
 | 
				
			||||||
M: abstract-clumps length
 | 
					M: abstract-clumps length
 | 
				
			||||||
    [ seq>> length 1 + ] [ n>> ] bi - 1 max ; inline
 | 
					    dup seq>> length [ drop 0 ] [
 | 
				
			||||||
 | 
					        swap [ 1 + ] [ n>> ] bi* - 1 max
 | 
				
			||||||
 | 
					    ] if-zero ; inline
 | 
				
			||||||
 | 
					
 | 
				
			||||||
M: abstract-clumps set-length
 | 
					M: abstract-clumps set-length
 | 
				
			||||||
    [ n>> + 1 - ] [ seq>> ] bi set-length ; inline
 | 
					    [ n>> + 1 - ] [ seq>> ] bi set-length ; inline
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue