[update big picture, add makefile that builds a pdf
John Meacham <john@repetae.net>**20061008213641] addfile ./docs/Makefile
hunk ./docs/Makefile 1
+
+
+big-picture.pdf: big-picture.ps
+	epstopdf $< --outfile $@
+
+big-picture.ps: big-picture.dot
+	dot $< -Tps -o$@
hunk ./docs/Makefile 9
+publish: big-picture.pdf big-picture.dot
+	cp big-picture.pdf big-picture.dot  ~/public_html/computer/jhc
+
+
+.PHONY: publish
+
hunk ./docs/big-picture.dot 22
+                typechecked_abstract_haskell [ label = "Annotated\nAbstract Haskell" ]
hunk ./docs/big-picture.dot 27
-                // core local pass
hunk ./docs/big-picture.dot 28
-                typechecked_abstract_haskell -> from_hs
-                typechecker -> from_hs [ style = dashed ]
-
-                typechecker -> rules_and_specializations  [ style = dashed ]
-                from_hs -> rules_and_specializations
-
+                style = dotted
+                processed_ho [ label = "Processed Ho" ]
hunk ./docs/big-picture.dot 31
-                rules_and_specializations -> local_core
-
hunk ./docs/big-picture.dot 33
-                initial_core [ label = "Abnormal Core and Rules" ]
+                initial_core [ label = "Abnormal\nCore and Rules" ]
hunk ./docs/big-picture.dot 35
-                from_hs -> initial_core [ label = "E.FromHs" ]
-                initial_core -> local_core [ label = "atomize applications, annotate ids, uniquify"]
+
+                typechecked_abstract_haskell -> from_hs
+                typechecker -> from_hs [ style = dashed, arrowhead = vee ]
+                typechecker -> rules_and_specializations  [ style = dashed, arrowhead = vee ]
+                from_hs -> rules_and_specializations  [ arrowhead = vee]
+                rules_and_specializations -> local_core [ arrowhead = vee ]
+                from_hs -> initial_core [ arrowhead = vee ]
+                initial_core -> local_core [ label = "atomize applications,\nannotate ids,\nuniquify"]
hunk ./docs/big-picture.dot 47
-                style = dotted
hunk ./docs/big-picture.dot 55
-                processed_ho -> initial_program
+                processed_ho -> initial_program  [ arrowhead = vee ]
hunk ./docs/big-picture.dot 72
-                        // final stuff
-                        boxy_core -> boxy_core [ label = "Optimize" ]
hunk ./docs/big-picture.dot 73
+                        mangled_core [ label = "Mangled Core" ]
+
+                        boxy_core -> boxy_core [ label = "Optimize" ]
hunk ./docs/big-picture.dot 85
-                mangled_core -> grin      [ label = "Grin.FromHs" ]
-                grin -> grin [ label = "optimize" ]
+                grin [ label = "Grin" ]
+                evalexpanded_grin [ label = "Grin after Eval and Apply inlining" ]
+
+                mangled_core -> grin [ label = "Grin.FromHs" ]
+                grin -> grin [ label = "Optimize" ]
hunk ./docs/big-picture.dot 91
-                evalexpanded_grin -> evalexpanded_grin [ label = "optimize" ]
+                evalexpanded_grin -> evalexpanded_grin [ label = "Optimize" ]
hunk ./docs/big-picture.dot 96
+
hunk ./docs/big-picture.dot 108
-                hl_library [ label = "Library: main-1.0.hl" ]
-                ho_file [ label = "Ho: Main.ho" ]
+                hl_library [ label = "Library: main-1.0.hl", shape = parallelogram ]
+                ho_file [ label = "Ho: Main.ho", shape = parallelogram ]
+
hunk ./docs/big-picture.dot 115
-                processed_ho -> collected_ho_data
+                processed_ho -> collected_ho_data   [ arrowhead = vee ]
hunk ./docs/big-picture.dot 118
-                ho_file [ shape = parallelogram ]
-                hl_library [ shape = parallelogram ]
hunk ./docs/big-picture.dot 121
+        subgraph cluster_legend {
+                label = "Legend"
+                file [ label = "File", shape = parallelogram ]
+                concrete [ label = "Concrete\nrepresentation" ]
+                operation [ label = "Operation", shape = box ]
+                concrete -> operation [ label = "Code\nMovement", arrowhead = vee ]
+                operation -> concrete [ label = "Metainfo\nMovement", style = dashed, arrowhead = vee ]
+                operation -> file [ label = "Code\nTransformation"  ]
+
+        }
hunk ./docs/big-picture.dot 133
+
+