[print statistics as grin simplifier goes
John Meacham <john@repetae.net>**20051025094846] hunk ./Grin/EvalInline.hs 61
-        | tagIsWHNF t = Return n2
+        | tagIsWHNF t = Return (NodeC t vs)
hunk ./Main.hs 406
-    let opt x = do
-        wdump FD.Progress $ putErrLn "Optimization Pass..."
-        t <- Stats.getTicks stats
-        x <- deadFunctions stats [funcMain] x
-        x <- Grin.Simplify.simplify stats x
+    let opt s  x = do
+        stats' <- Stats.new
+        x <- deadFunctions stats' [funcMain] x
+        x <- Grin.Simplify.simplify stats' x
hunk ./Main.hs 411
-        t' <- Stats.getTicks stats
-        case t == t' of
-            False -> opt x
-            True -> return x
-    x <- opt x
+        t' <- Stats.getTicks stats'
+        wdump FD.Progress $ Stats.print s stats'
+        Stats.combine stats stats'
+        case t' of
+            0 -> return x
+            _ -> opt s x
+    x <- opt "Optimization" x
hunk ./Main.hs 431
-    let opt (0::Int) x = return x
-        opt n x = do
-        wdump FD.Progress $ putErrLn "AE Optimization Pass..."
-        t <- Stats.getTicks stats
-        x <- deadFunctions stats [funcMain] x
-        x <- Grin.Simplify.simplify stats x
-        typecheckGrin x
-        t' <- Stats.getTicks stats
-        case t == t' of
-            False -> opt (n - 1) x
-            True -> return x
-    x <- opt (-1) x
+    x <- opt "AE Optimization" x
hunk ./Main.hs 433
-