comparison src/monoize.sml @ 651:bab524996fca

Noisy demo
author Adam Chlipala <adamc@hcoop.net>
date Tue, 10 Mar 2009 17:29:03 -0400
parents fb2a0e76dcef
children a93d5324f400
comparison
equal deleted inserted replaced
650:fcf0bd3d1667 651:bab524996fca
1818 fm) 1818 fm)
1819 end 1819 end
1820 | (L'.TFun _, _) => 1820 | (L'.TFun _, _) =>
1821 let 1821 let
1822 val s' = " " ^ lowercaseFirst x ^ "='" 1822 val s' = " " ^ lowercaseFirst x ^ "='"
1823 val e = (L'.EApp (e, (L'.ERecord [], loc)), loc)
1823 in 1824 in
1824 ((L'.EStrcat (s, 1825 ((L'.EStrcat (s,
1825 (L'.EStrcat ( 1826 (L'.EStrcat (
1826 (L'.EPrim (Prim.String s'), loc), 1827 (L'.EPrim (Prim.String s'), loc),
1827 (L'.EStrcat ( 1828 (L'.EStrcat (
2262 (L'.TRecord [], loc), 2263 (L'.TRecord [], loc),
2263 (L'.EApp ((L'.EApp ((L'.ERel 1, loc), 2264 (L'.EApp ((L'.EApp ((L'.ERel 1, loc),
2264 (L'.ERel 0, loc)), loc), 2265 (L'.ERel 0, loc)), loc),
2265 (L'.ERecord [], loc)), loc)), loc)), loc) 2266 (L'.ERecord [], loc)), loc)), loc)), loc)
2266 val ek = (L'.EApp (ekf, ek), loc) 2267 val ek = (L'.EApp (ekf, ek), loc)
2267 in 2268 val e = (L'.EServerCall (call, ek, t), loc)
2268 ((L'.EServerCall (call, ek, t), loc), fm) 2269 val e = liftExpInExp 0 e
2270 val unit = (L'.TRecord [], loc)
2271 val e = (L'.EAbs ("_", unit, unit, e), loc)
2272 in
2273 (e, fm)
2269 end 2274 end
2270 2275
2271 | L.EKAbs _ => poly () 2276 | L.EKAbs _ => poly ()
2272 | L.EKApp _ => poly () 2277 | L.EKApp _ => poly ()
2273 end 2278 end