]> gitweb.factorcode.org Git - factor.git/commitdiff
stack-checker: split off stack-checker.dependencies from stack-checker.state
authorSlava Pestov <slava@slava-pestovs-macbook-pro.local>
Mon, 9 Nov 2009 02:34:46 +0000 (20:34 -0600)
committerSlava Pestov <slava@slava-pestovs-macbook-pro.local>
Mon, 9 Nov 2009 02:34:46 +0000 (20:34 -0600)
16 files changed:
basis/compiler/compiler.factor
basis/compiler/crossref/crossref.factor
basis/compiler/tree/cleanup/cleanup.factor
basis/compiler/tree/dead-code/simple/simple.factor
basis/compiler/tree/propagation/known-words/known-words.factor
basis/compiler/tree/propagation/simple/simple.factor
basis/compiler/tree/propagation/transforms/transforms.factor
basis/stack-checker/backend/backend.factor
basis/stack-checker/dependencies/authors.txt [new file with mode: 0644]
basis/stack-checker/dependencies/dependencies.factor [new file with mode: 0644]
basis/stack-checker/inlining/inlining.factor
basis/stack-checker/known-words/known-words.factor
basis/stack-checker/state/state.factor
basis/stack-checker/transforms/transforms.factor
core/source-files/source-files.factor
core/words/words.factor

index 161b6a48967b181a63bc62ce26359a34f95025ba..e3c2ed469725dab4a8e56f08365967f68d2d4ff0 100755 (executable)
@@ -5,7 +5,8 @@ continuations vocabs assocs dlists definitions math graphs generic
 generic.single combinators deques search-deques macros
 source-files.errors combinators.short-circuit
 
-stack-checker stack-checker.state stack-checker.inlining stack-checker.errors
+stack-checker stack-checker.dependencies stack-checker.inlining
+stack-checker.errors
 
 compiler.errors compiler.units compiler.utilities
 
index f3b65ce15138a65afdadd17f179b9aef119eb288..e6ef5cf17c68a88bee166ff365478093de16913d 100644 (file)
@@ -1,7 +1,8 @@
 ! Copyright (C) 2009 Slava Pestov.
 ! See http://factorcode.org/license.txt for BSD license.
 USING: assocs classes.algebra compiler.units definitions graphs
-grouping kernel namespaces sequences words stack-checker.state ;
+grouping kernel namespaces sequences words
+stack-checker.dependencies ;
 IN: compiler.crossref
 
 SYMBOL: compiled-crossref
index 8ed83188e5ddd6841f019340e4081501e78513be..ec819d0eacaee737d47cb5243b5947d3f95508d0 100644 (file)
@@ -3,7 +3,7 @@
 USING: kernel accessors sequences combinators fry
 classes.algebra namespaces assocs words math math.private
 math.partial-dispatch math.intervals classes classes.tuple
-classes.tuple.private layouts definitions stack-checker.state
+classes.tuple.private layouts definitions stack-checker.dependencies
 stack-checker.branches
 compiler.utilities
 compiler.tree
index f6165a44ab94bba1695f905ac74f8ea67f45baa7..67c5cfdc78a55352390da3826bfa41345f29b0ce 100755 (executable)
@@ -2,7 +2,7 @@
 ! See http://factorcode.org/license.txt for BSD license.
 USING: kernel accessors words assocs sequences arrays namespaces
 fry locals definitions classes classes.algebra generic
-stack-checker.state
+stack-checker.dependencies
 stack-checker.backend
 compiler.tree
 compiler.tree.propagation.info
index 8afbaf0099082710c1ee8e2805dec359b8e6a575..1453bebf9aa30f78ae48667619da8fa8d369aa07 100644 (file)
@@ -8,7 +8,7 @@ classes.algebra combinators generic.math splitting fry locals
 classes.tuple alien.accessors classes.tuple.private
 slots.private definitions strings.private vectors hashtables
 generic quotations alien
-stack-checker.state
+stack-checker.dependencies
 compiler.tree.comparisons
 compiler.tree.propagation.info
 compiler.tree.propagation.nodes
index 5de5e26a304e4f8d8025157cf06364f5b21259ca..b4d8b95247b4e7c1966f2323e685b09b0e3ce5ea 100644 (file)
@@ -4,7 +4,7 @@ USING: fry accessors kernel sequences sequences.private assocs
 words namespaces classes.algebra combinators
 combinators.short-circuit classes classes.tuple
 classes.tuple.private continuations arrays alien.c-types math
-math.private slots generic definitions stack-checker.state
+math.private slots generic definitions stack-checker.dependencies
 compiler.tree
 compiler.tree.propagation.info
 compiler.tree.propagation.nodes
index ff68fb2400a97a345afb744373d61bc06b39da4c..294b88340385b24c04e429e1da98b7a3f74268e0 100644 (file)
@@ -2,7 +2,7 @@
 ! See http://factorcode.org/license.txt for BSD license.
 USING: kernel sequences words fry generic accessors
 classes.tuple classes classes.algebra definitions
-stack-checker.state quotations classes.tuple.private math
+stack-checker.dependencies quotations classes.tuple.private math
 math.partial-dispatch math.private math.intervals sets.private
 math.floats.private math.integers.private layouts math.order
 vectors hashtables combinators effects generalizations assocs
index 5411c885ad7165f0a7a44ea55e2c879df6658c79..2d4c1e9c6121bdc7800a2c6de4fcd0af8a7e570e 100755 (executable)
@@ -5,7 +5,7 @@ parser sequences strings vectors words quotations effects classes
 continuations assocs combinators compiler.errors accessors math.order
 definitions sets hints macros stack-checker.state
 stack-checker.visitor stack-checker.errors stack-checker.values
-stack-checker.recursive-state summary ;
+stack-checker.recursive-state stack-checker.dependencies summary ;
 IN: stack-checker.backend
 
 : push-d ( obj -- ) meta-d push ;
diff --git a/basis/stack-checker/dependencies/authors.txt b/basis/stack-checker/dependencies/authors.txt
new file mode 100644 (file)
index 0000000..d4f5d6b
--- /dev/null
@@ -0,0 +1 @@
+Slava Pestov
\ No newline at end of file
diff --git a/basis/stack-checker/dependencies/dependencies.factor b/basis/stack-checker/dependencies/dependencies.factor
new file mode 100644 (file)
index 0000000..f0c77b8
--- /dev/null
@@ -0,0 +1,37 @@
+! Copyright (C) 2009 Slava Pestov.
+! See http://factorcode.org/license.txt for BSD license.
+USING: assocs classes.algebra fry kernel math namespaces
+sequences words ;
+IN: stack-checker.dependencies
+
+! Words that the current quotation depends on
+SYMBOL: dependencies
+
+SYMBOLS: inlined-dependency flushed-dependency called-dependency ;
+
+: index>= ( obj1 obj2 seq -- ? )
+    [ index ] curry bi@ >= ;
+
+: dependency>= ( how1 how2 -- ? )
+    { called-dependency flushed-dependency inlined-dependency }
+    index>= ;
+
+: strongest-dependency ( how1 how2 -- how )
+    [ called-dependency or ] bi@ [ dependency>= ] most ;
+
+: depends-on ( word how -- )
+    over primitive? [ 2drop ] [
+        dependencies get dup [
+            swap '[ _ strongest-dependency ] change-at
+        ] [ 3drop ] if
+    ] if ;
+
+! Generic words that the current quotation depends on
+SYMBOL: generic-dependencies
+
+: ?class-or ( class/f class -- class' )
+    swap [ class-or ] when* ;
+
+: depends-on-generic ( generic class -- )
+    generic-dependencies get dup
+    [ swap '[ _ ?class-or ] change-at ] [ 3drop ] if ;
index c99e0f02521032af919b3bd44407c3e9cd222b6e..d94868688c094651b0103c337ad2f106c3e858d0 100644 (file)
@@ -10,6 +10,7 @@ stack-checker.visitor
 stack-checker.backend
 stack-checker.branches
 stack-checker.known-words
+stack-checker.dependencies
 stack-checker.recursive-state ;
 IN: stack-checker.inlining
 
index 154e67ebb1070d5b568aac4e0232308c679c83ad..9095eaca8a30d524d31f1944ffb62ee34424ecac 100644 (file)
@@ -21,6 +21,7 @@ stack-checker.visitor
 stack-checker.backend
 stack-checker.branches
 stack-checker.transforms
+stack-checker.dependencies
 stack-checker.recursive-state ;
 IN: stack-checker.known-words
 
index bd9c57efbc16f09e143b5fda5a8002b87e102257..c0d3d05409c0ce58decf3538d8419b44e1698903 100644 (file)
@@ -44,35 +44,3 @@ SYMBOL: literals
     V{ } clone \ meta-d set
     V{ } clone literals set
     0 d-in set ;
-
-! Words that the current quotation depends on
-SYMBOL: dependencies
-
-SYMBOLS: inlined-dependency flushed-dependency called-dependency ;
-
-: index>= ( obj1 obj2 seq -- ? )
-    [ index ] curry bi@ >= ;
-
-: dependency>= ( how1 how2 -- ? )
-    { called-dependency flushed-dependency inlined-dependency }
-    index>= ;
-
-: strongest-dependency ( how1 how2 -- how )
-    [ called-dependency or ] bi@ [ dependency>= ] most ;
-
-: depends-on ( word how -- )
-    over primitive? [ 2drop ] [
-        dependencies get dup [
-            swap '[ _ strongest-dependency ] change-at
-        ] [ 3drop ] if
-    ] if ;
-
-! Generic words that the current quotation depends on
-SYMBOL: generic-dependencies
-
-: ?class-or ( class/f class -- class' )
-    swap [ class-or ] when* ;
-
-: depends-on-generic ( generic class -- )
-    generic-dependencies get dup
-    [ swap '[ _ ?class-or ] change-at ] [ 3drop ] if ;
index 11534c58f9f215bd356f85a88e26e7a0fd7bf138..53f8b77ad87508a33fca8c28330f08cf766fe64b 100755 (executable)
@@ -7,7 +7,8 @@ classes.tuple.private effects summary hashtables classes sets
 definitions generic.standard slots.private continuations locals
 sequences.private generalizations stack-checker.backend
 stack-checker.state stack-checker.visitor stack-checker.errors
-stack-checker.values stack-checker.recursive-state ;
+stack-checker.values stack-checker.recursive-state
+stack-checker.dependencies ;
 IN: stack-checker.transforms
 
 : call-transformer ( word stack quot -- newquot )
index 558018a147d404fef479c267564c1c1319fbfa65..4991a0860a6fde24f9fd88e58c6ba375bafc1479 100644 (file)
@@ -3,7 +3,7 @@
 USING: arrays definitions generic assocs kernel math namespaces
 sequences strings vectors words quotations io io.files
 io.pathnames combinators sorting splitting math.parser effects
-continuations checksums checksums.crc32 vocabs hashtables graphs
+continuations checksums checksums.crc32 vocabs hashtables
 compiler.units io.encodings.utf8 accessors source-files.errors ;
 IN: source-files
 
index d2fe7d26252e863999e69a894d0bb24be81107ee..24a95853da0ab159c33383a2cf35dbba0bed45b9 100755 (executable)
@@ -1,9 +1,9 @@
 ! Copyright (C) 2004, 2009 Slava Pestov.
 ! See http://factorcode.org/license.txt for BSD license.
-USING: accessors arrays definitions graphs kernel
-kernel.private slots.private math namespaces sequences
-strings vectors sbufs quotations assocs hashtables sorting vocabs
-math.order sets words.private ;
+USING: accessors arrays definitions kernel kernel.private
+slots.private math namespaces sequences strings vectors sbufs
+quotations assocs hashtables sorting vocabs math.order sets
+words.private ;
 IN: words
 
 : word ( -- word ) \ word get-global ;