diff src/expl_print.sml @ 109:813e5a52063d

Remove closure conversion in favor of zany fun with modules, which also replaces 'page'
author Adam Chlipala <adamc@hcoop.net>
date Sun, 13 Jul 2008 10:17:06 -0400
parents f0f59e918cac
children 541282b81454
line wrap: on
line diff
--- a/src/expl_print.sml	Thu Jul 10 16:05:14 2008 -0400
+++ b/src/expl_print.sml	Sun Jul 13 10:17:06 2008 -0400
@@ -92,7 +92,8 @@
          handle E.UnboundNamed _ => string ("UNBOUND_NAMED" ^ Int.toString n))
       | CModProj (m1, ms, x) =>
         let
-            val (m1x, sgn) = E.lookupStrNamed env m1
+            val m1x = #1 (E.lookupStrNamed env m1)
+                      handle E.UnboundNamed _ => "UNBOUND"
 
             val m1s = if !debug then
                           m1x ^ "__" ^ Int.toString m1
@@ -237,6 +238,10 @@
                  p_con' true env c]
       | EFold _ => string "fold"
 
+      | EWrite e => box [string "write(",
+                         p_exp env e,
+                         string ")"]
+
 and p_exp env = p_exp' false env
 
 fun p_named x n =
@@ -392,12 +397,13 @@
                                     string ":",
                                     space,
                                     p_sgn env sgn]
-      | DPage (c, e) => box [string "page",
-                             p_con env c,
-                             space,
-                             string "=",
-                             space,
-                             p_exp env e]
+      | DExport (_, sgn, str) => box [string "export",
+                                      space,
+                                      p_str env str,
+                                      space,
+                                      string ":",
+                                      space,
+                                      p_sgn env sgn]
 
 and p_str env (str, _) =
     case str of