]> gitweb.factorcode.org Git - factor.git/commitdiff
assocs: 5-8% performance improvement to assoc>map. Fixes #69.
authorJohn Benediktsson <mrjbq7@gmail.com>
Sun, 13 Nov 2011 00:56:22 +0000 (16:56 -0800)
committerJohn Benediktsson <mrjbq7@gmail.com>
Sun, 13 Nov 2011 01:02:33 +0000 (17:02 -0800)
core/assocs/assocs.factor

index 0508d2e5696df81380b275154a00ffb6a56640f8..d2b0a1f77f302757ced7b0bbfcf169fe0c08eb97 100644 (file)
@@ -58,10 +58,10 @@ PRIVATE>
     (assoc-each) each ; inline
 
 : assoc>map ( ... assoc quot: ( ... key value -- ... elt ) exemplar -- ... seq )
-    [ collector-for [ assoc-each ] dip ] [ like ] bi ; inline
+    [ >alist ] 2dip [ [ first2 ] prepose ] dip map-as ; inline
 
 : assoc-map-as ( ... assoc quot: ( ... key value -- ... newkey newvalue ) exemplar -- ... newassoc )
-    [ [ 2array ] compose V{ } assoc>map ] dip assoc-like ; inline
+    [ [ 2array ] compose { } assoc>map ] dip assoc-like ; inline
 
 : assoc-map ( ... assoc quot: ( ... key value -- ... newkey newvalue ) -- ... newassoc )
     over assoc-map-as ; inline