Mercurial > urweb
comparison src/corify.sml @ 29:537db4ee89f4
Translation to Cjr
author | Adam Chlipala <adamc@hcoop.net> |
---|---|
date | Tue, 10 Jun 2008 18:28:43 -0400 |
parents | 4ab19c19665f |
children | 1c91c5e6840f |
comparison
equal
deleted
inserted
replaced
28:104d43266b33 | 29:537db4ee89f4 |
---|---|
70 | L.EApp (e1, e2) => (L'.EApp (corifyExp e1, corifyExp e2), loc) | 70 | L.EApp (e1, e2) => (L'.EApp (corifyExp e1, corifyExp e2), loc) |
71 | L.EAbs (x, dom, ran, e1) => (L'.EAbs (x, corifyCon dom, corifyCon ran, corifyExp e1), loc) | 71 | L.EAbs (x, dom, ran, e1) => (L'.EAbs (x, corifyCon dom, corifyCon ran, corifyExp e1), loc) |
72 | L.ECApp (e1, c) => (L'.ECApp (corifyExp e1, corifyCon c), loc) | 72 | L.ECApp (e1, c) => (L'.ECApp (corifyExp e1, corifyCon c), loc) |
73 | L.ECAbs (_, x, k, e1) => (L'.ECAbs (x, corifyKind k, corifyExp e1), loc) | 73 | L.ECAbs (_, x, k, e1) => (L'.ECAbs (x, corifyKind k, corifyExp e1), loc) |
74 | 74 |
75 | L.ERecord xes => (L'.ERecord (map (fn (c, e) => (corifyCon c, corifyExp e)) xes), loc) | 75 | L.ERecord xes => (L'.ERecord (map (fn (c, e, t) => (corifyCon c, corifyExp e, corifyCon t)) xes), loc) |
76 | L.EField (e1, c, {field, rest}) => (L'.EField (corifyExp e1, corifyCon c, | 76 | L.EField (e1, c, {field, rest}) => (L'.EField (corifyExp e1, corifyCon c, |
77 {field = corifyCon field, rest = corifyCon rest}), loc) | 77 {field = corifyCon field, rest = corifyCon rest}), loc) |
78 | 78 |
79 | L.EError => raise Fail ("corifyExp: EError at " ^ EM.spanToString loc) | 79 | L.EError => raise Fail ("corifyExp: EError at " ^ EM.spanToString loc) |
80 | 80 |