diff --git a/extra/sequences/extras/extras.factor b/extra/sequences/extras/extras.factor index 2d48f3fc03..25beea2cce 100644 --- a/extra/sequences/extras/extras.factor +++ b/extra/sequences/extras/extras.factor @@ -1,4 +1,4 @@ -USING: accessors arrays assocs grouping kernel locals math +USING: accessors arrays assocs fry grouping kernel locals math math.order math.ranges sequences sequences.private splitting ; FROM: sequences => change-nth ; IN: sequences.extras @@ -161,6 +161,22 @@ IN: sequences.extras + +: map-from-as ( ... seq quot: ( ... elt -- ... newelt ) i exemplar -- ... newseq ) + [ -rot (each-from) ] dip map-integers ; inline + +: map-from ( ... seq quot: ( ... elt -- ... newelt ) i -- ... newseq ) + pick map-from-as ; inline + +