]> gitweb.factorcode.org Git - factor.git/commitdiff
regexp.dfa: more use of hash-sets.
authorJohn Benediktsson <mrjbq7@gmail.com>
Sat, 9 Mar 2013 00:50:59 +0000 (16:50 -0800)
committerJohn Benediktsson <mrjbq7@gmail.com>
Sat, 9 Mar 2013 00:50:59 +0000 (16:50 -0800)
basis/regexp/dfa/dfa.factor

index 8ded517c2abcf0ee574dd9afa38816b056e4d163..e25c0f13b40ec93bf45bb37965fcd0d4dfa24c45 100644 (file)
@@ -43,9 +43,7 @@ IN: regexp.dfa
     [ tagged-epsilon? not ] filter ;
 
 : add-todo-state ( state visited-states new-states -- )
-    2over key? [ 3drop ] [
-        [ conjoin ] [ push ] bi-curry* bi
-    ] if ;
+    2over ?adjoin [ nip push ] [ 3drop ] if ;
 
 : add-todo-states ( state/condition visited-states new-states -- )
     [ condition-states ] 2dip
@@ -82,6 +80,6 @@ IN: regexp.dfa
 : construct-dfa ( nfa -- dfa )
     dup initialize-dfa
     dup start-state>> condition-states >vector
-    H{ } clone
+    HS{ } clone
     new-transitions
     [ set-final-states ] keep ;