sequences: make sum-lengths generic.

db4
John Benediktsson 2014-06-02 08:40:38 -07:00
parent 6e834cd0de
commit 0a93877d4b
1 changed files with 6 additions and 1 deletions

View File

@ -819,9 +819,14 @@ PRIVATE>
[ 0 swap copy-unsafe ] keep reverse!
] keep like ;
: sum-lengths ( seq -- n )
GENERIC: sum-lengths ( seq -- n )
M: object sum-lengths
0 [ length + ] reduce ;
M: repetition sum-lengths
[ len>> ] [ elt>> length ] bi * ;
: concat-as ( seq exemplar -- newseq )
swap [ { } ] [
[ sum-lengths over new-resizable ] keep