sequences.extras: adding 2map-sum and 2count.

db4
John Benediktsson 2012-05-03 11:31:38 -07:00
parent 6b8d802985
commit ffeaf448a7
2 changed files with 9 additions and 0 deletions

View File

@ -67,3 +67,6 @@ IN: sequences.extras.tests
{ V{ 0 4 16 36 64 } } [ 10 iota [ even? ] [ sq ] filter-map ] unit-test
{ { 2 6 10 14 18 } } [ 10 iota [ odd? ] [ 2 * ] { } filter-map-as ] unit-test
{ 8 } [ 3 iota dup [ 1 + * ] 2map-sum ] unit-test
{ 4 } [ "hello" "jello" [ = ] 2count ] unit-test

View File

@ -171,3 +171,9 @@ PRIVATE>
: filter-map ( ... seq filter-quot: ( ... elt -- ... ? ) map-quot: ( ... elt -- ... newelt ) -- ... newseq )
pick filter-map-as ; inline
: 2map-sum ( ... seq1 seq2 quot: ( ... elt1 elt2 -- ... n ) -- ... n )
[ 0 ] 3dip [ dip + ] curry [ rot ] prepose 2each ; inline
: 2count ( ... seq1 seq2 quot: ( ... elt1 elt2 -- ... ? ) -- ... n )
[ 1 0 ? ] compose 2map-sum ; inline