grouping.extras: adding group-as and clump-as.

db4
John Benediktsson 2013-11-26 08:22:58 -08:00
parent 47e6b2e8fe
commit 2370ed3918
2 changed files with 12 additions and 2 deletions

View File

@ -18,3 +18,6 @@ IN: grouping.extras
{ { "tail" "ail" "il" "l" } } [ "tail" tail-clump ] unit-test { { "tail" "ail" "il" "l" } } [ "tail" tail-clump ] unit-test
{ { "h" "he" "hea" "head" } } [ "head" head-clump ] unit-test { { "h" "he" "hea" "head" } } [ "head" head-clump ] unit-test
{ { B{ 97 115 } B{ 100 102 } } } [ "asdf" 2 B{ } group-as ] unit-test
{ { { 97 115 } { 115 100 } { 100 102 } } } [ "asdf" 2 { } clump-as ] unit-test

View File

@ -1,5 +1,6 @@
USING: accessors combinators fry kernel macros math math.ranges USING: accessors combinators fry grouping kernel macros math
sequences sequences.generalizations sequences.private ; math.ranges sequences sequences.generalizations
sequences.private ;
IN: grouping.extras IN: grouping.extras
@ -41,3 +42,9 @@ INSTANCE: tail-clumps immutable-sequence
: tail-clump ( seq -- array ) : tail-clump ( seq -- array )
[ <tail-clumps> ] [ [ like ] curry map ] bi ; [ <tail-clumps> ] [ [ like ] curry map ] bi ;
: clump-as ( seq n exemplar -- array )
[ <clumps> ] dip [ like ] curry map ;
: group-as ( seq n exemplar -- array )
[ <groups> ] dip [ like ] curry map ;