]> gitweb.factorcode.org Git - factor.git/commitdiff
Faster bit-array equality, add bit-set-subset? word
authorSlava Pestov <slava@slava-pestovs-macbook-pro.local>
Tue, 28 Jul 2009 16:14:57 +0000 (11:14 -0500)
committerSlava Pestov <slava@slava-pestovs-macbook-pro.local>
Tue, 28 Jul 2009 16:14:57 +0000 (11:14 -0500)
basis/bit-arrays/bit-arrays.factor
basis/bit-sets/bit-sets.factor

index 17c391636fcd76bd89e815615f950ce6a1122a35..42655aceb8e4c55ba8290b7cbe0f1ad5cbf63dc8 100644 (file)
@@ -61,7 +61,7 @@ M: bit-array like drop dup bit-array? [ >bit-array ] unless ;
 M: bit-array new-sequence drop <bit-array> ;
 
 M: bit-array equal?
-    over bit-array? [ sequence= ] [ 2drop f ] if ;
+    over bit-array? [ [ underlying>> ] bi@ sequence= ] [ 2drop f ] if ;
 
 M: bit-array resize
     [ drop ] [
index 0e97968965d9a76f924bcdc029e8a420bf95cbda..34b7f13dc24c2ae9e59dc7ae97ac44fa3eb05a2a 100644 (file)
@@ -26,4 +26,6 @@ HINTS: bit-set-intersect bit-array bit-array ;
 
 : bit-set-diff ( seq1 seq2 -- seq ) [ bitnot bitand ] bit-set-map ;
 
-HINTS: bit-set-diff bit-array bit-array ;
\ No newline at end of file
+HINTS: bit-set-diff bit-array bit-array ;
+
+: bit-set-subset? ( seq1 seq2 -- ? ) dupd bit-set-intersect = ;
\ No newline at end of file