sequences.extras: add count-head and count-tail

modern-harvey2
Doug Coleman 2017-09-28 22:41:21 -05:00
parent 577d4618ca
commit 5a8f9284ab
1 changed files with 7 additions and 0 deletions

View File

@ -620,3 +620,10 @@ PRIVATE>
: drop-while ( ... seq quot: ( ... elt -- ... ? ) -- tail-slice )
[ '[ @ not ] find drop ] 2keep drop swap
[ dup length ] unless* tail-slice ; inline
: count-head ( seq quot -- n )
[ not ] compose find drop ; inline
: count-tail ( seq quot -- n )
[ not ] compose [ find-last drop ] 2keep drop
length swap [ - 1 - ] when* ; inline