]> gitweb.factorcode.org Git - factor.git/commitdiff
interval-maps: first2 is faster.
authorJohn Benediktsson <mrjbq7@gmail.com>
Fri, 24 Aug 2012 21:25:19 +0000 (14:25 -0700)
committerJohn Benediktsson <mrjbq7@gmail.com>
Fri, 24 Aug 2012 21:25:19 +0000 (14:25 -0700)
basis/interval-maps/interval-maps.factor

index d408c6b5bb54d0dfa525f331c3c3f67ced6ec33b..36b34647859c9479773c8643c560097eb89873b0 100644 (file)
@@ -16,7 +16,7 @@ ALIAS: value third
     array>> [ start <=> ] with search nip ;\r
 \r
 : interval-contains? ( key interval-node -- ? )\r
-    [ start ] [ end ] bi between? ;\r
+    first2 between? ;\r
 \r
 : all-intervals ( sequence -- intervals )\r
     [ [ dup number? [ dup 2array ] when ] dip ] { } assoc-map-as ;\r
@@ -56,7 +56,7 @@ PRIVATE>
     ! Only works with integer keys, because they're discrete\r
     ! Makes 2array keys\r
     [\r
-        alist sort-keys unclip swap [ [ first dup ] [ second ] bi ] dip\r
+        alist sort-keys unclip swap [ first2 dupd ] dip\r
         [| oldkey oldval key val | ! Underneath is start\r
             oldkey 1 + key =\r
             oldval val = and\r