]> gitweb.factorcode.org Git - factor.git/commitdiff
refactor stack-checker slightly to fix circular dependency
authorJoe Groff <arcata@gmail.com>
Fri, 5 Mar 2010 22:27:36 +0000 (14:27 -0800)
committerJoe Groff <arcata@gmail.com>
Fri, 5 Mar 2010 22:27:36 +0000 (14:27 -0800)
basis/stack-checker/backend/backend.factor
basis/stack-checker/row-polymorphism/row-polymorphism.factor
basis/stack-checker/stack-checker.factor

index 8de930a6cd7672cdab4eabebb51f1c36491aed64..15fa9f588ae66ad92f8be4f4b5e9c727cfed8e72 100644 (file)
@@ -157,3 +157,6 @@ M: bad-call summary
         current-effect
         stack-visitor get
     ] with-scope ; inline
+
+: (infer) ( quot -- effect )
+    [ infer-quot-here ] with-infer drop ;
index a01d0caaf97ff51d82d3dd423fe8856c307f00ff..6557a26393573e0a973d8bb66886422186fd3097 100644 (file)
@@ -1,7 +1,7 @@
 ! (c)2010 Joe Groff bsd license
 USING: accessors arrays assocs combinators combinators.short-circuit
 continuations effects fry kernel locals math namespaces
-quotations sequences splitting stack-checker
+quotations sequences splitting
 stack-checker.backend
 stack-checker.errors
 stack-checker.known-words
@@ -68,7 +68,7 @@ GENERIC: (infer-known) ( known -- effect )
 M: object (infer-known)
     current-word get bad-macro-input ;
 M: literal (infer-known)
-    value>> dup callable? [ infer ] [ abandon-check ] if ;
+    value>> dup callable? [ (infer) ] [ abandon-check ] if ;
 M: composed (infer-known)
     [ quot1>> known (infer-known) ] [ quot2>> known (infer-known) ] bi compose-effects ;
 M: curried (infer-known)
index 12e86609004c992de19e056ff95352967b4d18df..beb5026a2ba8af94032d0caac64843892e58e860 100644 (file)
@@ -11,7 +11,7 @@ IN: stack-checker
 GENERIC: infer ( quot -- effect )
 
 M: callable infer ( quot -- effect )
-    [ infer-quot-here ] with-infer drop ;
+    (infer) ;
 
 : infer. ( quot -- )
     #! Safe to call from inference transforms.