From d145548c4420a735b94672cf3ff866f22328a242 Mon Sep 17 00:00:00 2001 From: John Benediktsson Date: Thu, 29 Dec 2016 12:35:39 -0800 Subject: [PATCH] sequences.extras: fix map-concat to be row-polymorphic. --- extra/sequences/extras/extras-tests.factor | 4 ++-- extra/sequences/extras/extras.factor | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/extra/sequences/extras/extras-tests.factor b/extra/sequences/extras/extras-tests.factor index 96e8c7109b..28db9fb03f 100644 --- a/extra/sequences/extras/extras-tests.factor +++ b/extra/sequences/extras/extras-tests.factor @@ -107,8 +107,8 @@ IN: sequences.extras.tests { "abc" } [ "abc" [ 1string ] map-concat ] unit-test { "abc" } [ { 97 98 99 } [ 1string ] map-concat ] unit-test { { 97 98 99 } } [ "abc" [ 1string ] { } map-concat-as ] unit-test -{ { "foobaz" "barbaz" } } -[ "baz" { { "foo" } { "bar" } } [ [ prepend ] with map ] with map-concat ] unit-test +{ "baz" { "foobaz" "barbaz" } } +[ "baz" { { "foo" } { "bar" } } [ [ over append ] map ] map-concat ] unit-test { { } } [ { } [ ] [ even? ] map-filter ] unit-test { "bcde" } [ "abcd" [ 1 + ] [ drop t ] map-filter ] unit-test diff --git a/extra/sequences/extras/extras.factor b/extra/sequences/extras/extras.factor index 3d7d89d8d9..8d2805473c 100644 --- a/extra/sequences/extras/extras.factor +++ b/extra/sequences/extras/extras.factor @@ -230,9 +230,9 @@ PRIVATE> : map-concat ( ... seq quot: ( ... elt -- ... newelt ) -- ... newseq ) over empty? [ 2drop { } ] [ - [ [ first ] dip call ] 2keep pick [ - [ >resizable ] 2dip [ append! ] compose 1 each-from - ] dip like + [ [ first ] dip call ] 2keep rot [ + >resizable [ '[ @ _ push-all ] 1 each-from ] keep + ] keep like ] if ; inline : map-filter-as ( ... seq map-quot: ( ... elt -- ... newelt ) filter-quot: ( ... newelt -- ... ? ) exemplar -- ... subseq ) -- 2.34.1