# HG changeset patch # User Adam Chlipala # Date 1216768345 14400 # Node ID 15e8b9775539446aa6c2984f6cf6b1999d774b39 # Parent eb16f2aadbe9cc25a2a45a1369d62fc50129a912 gform in proper order diff -r eb16f2aadbe9 -r 15e8b9775539 lib/basis.lig --- a/lib/basis.lig Tue Jul 22 18:46:04 2008 -0400 +++ b/lib/basis.lig Tue Jul 22 19:12:25 2008 -0400 @@ -24,7 +24,10 @@ -> xml ctx use1 bind1 -> xml ctx (use1 ++ bind1) bind2 -> xml ctx use1 (bind1 ++ bind2) - +val useMore : ctx ::: {Unit} -> use1 ::: {Type} -> use2 ::: {Type} -> bind ::: {Type} + -> use1 ~ use2 + -> xml ctx use1 bind + -> xml ctx (use1 ++ use2) bind con xhtml = xml [Html] con page = xhtml [] [] diff -r eb16f2aadbe9 -r 15e8b9775539 src/monoize.sml --- a/src/monoize.sml Tue Jul 22 18:46:04 2008 -0400 +++ b/src/monoize.sml Tue Jul 22 19:12:25 2008 -0400 @@ -351,6 +351,17 @@ (L'.EPrim (Prim.String ""), loc)), loc)), loc) end + | L.EApp ((L.ECApp ( + (L.ECApp ( + (L.ECApp ( + (L.ECApp ( + (L.EFfi ("Basis", "useMore"), _), _), _), + _), _), + _), _), + _), _), + xml) => monoExp env xml + + | L.EApp (e1, e2) => (L'.EApp (monoExp env e1, monoExp env e2), loc) | L.EAbs (x, dom, ran, e) => (L'.EAbs (x, monoType env dom, monoType env ran, monoExp (Env.pushERel env x dom) e), loc) diff -r eb16f2aadbe9 -r 15e8b9775539 tests/gform.lac --- a/tests/gform.lac Tue Jul 22 18:46:04 2008 -0400 +++ b/tests/gform.lac Tue Jul 22 19:12:25 2008 -0400 @@ -23,7 +23,7 @@ {fold [fn rs :: {Unit} => xml lform [] (stringify rs)] (fn nm :: Name => fn u :: Unit => fn rest :: {Unit} => fn frag : xml lform [] (stringify rest) => -
  • {frag}
  • ) +
  • {useMore frag}
    ) [rs]}