diff src/monoize.sml @ 183:c0ea24dcb86f

Optimizing 'case' in Mono_reduce
author Adam Chlipala <adamc@hcoop.net>
date Sun, 03 Aug 2008 13:30:27 -0400
parents d11754ffe252
children 19ee24bffbc0
line wrap: on
line diff
--- a/src/monoize.sml	Sun Aug 03 12:43:20 2008 -0400
+++ b/src/monoize.sml	Sun Aug 03 13:30:27 2008 -0400
@@ -63,6 +63,8 @@
 
           | L.CApp ((L.CApp ((L.CApp ((L.CFfi ("Basis", "xml"), _), _), _), _), _), _) =>
             (L'.TFfi ("Basis", "string"), loc)
+          | L.CApp ((L.CApp ((L.CFfi ("Basis", "xhtml"), _), _), _), _) =>
+            (L'.TFfi ("Basis", "string"), loc)
 
           | L.CRel _ => poly ()
           | L.CNamed n =>
@@ -164,7 +166,7 @@
                 let
                     val (_, _, _, s) = Env.lookupENamed env fnam
                 in
-                    ((L'.EPrim (Prim.String s), loc), fm)
+                    ((L'.EPrim (Prim.String ("/" ^ s)), loc), fm)
                 end
               | L'.EClosure (fnam, args) =>
                 let
@@ -187,7 +189,7 @@
                           | _ => (E.errorAt loc "Type mismatch encoding attribute";
                                   (e, fm))
                 in
-                    attrify (args, ft, (L'.EPrim (Prim.String s), loc), fm)
+                    attrify (args, ft, (L'.EPrim (Prim.String ("/" ^ s)), loc), fm)
                 end
               | _ =>
                 case t of