[when converting from type analyzed terms back into core, be sure to recurse through types looking for more tc_Arrows
John Meacham <john@repetae.net>**20070306061845] hunk ./E/TypeAnalysis.hs 19
-import E.Traverse(emapE',emapE_)
+import E.Traverse(emapE',emapE_,emapE)
hunk ./E/TypeAnalysis.hs 273
-repi (ELit LitCons { litName = n, litArgs = [a,b] }) | n == tc_Arrow = EPi tvr { tvrIdent = 0, tvrType = a } b
-repi e = e
+repi (ELit LitCons { litName = n, litArgs = [a,b] }) | n == tc_Arrow = EPi tvr { tvrIdent = 0, tvrType = repi a } (repi b)
+repi e = runIdentity $ emapE (return . repi ) e