Mercurial > urweb
comparison src/corify.sml @ 176:33d4a8eea484
Case through explify
author | Adam Chlipala <adamc@hcoop.net> |
---|---|
date | Thu, 31 Jul 2008 16:28:55 -0400 |
parents | 80192edca30d |
children | 5d030ee143e2 |
comparison
equal
deleted
inserted
replaced
175:b2d752455182 | 176:33d4a8eea484 |
---|---|
392 | L.EField (e1, c, {field, rest}) => (L'.EField (corifyExp st e1, corifyCon st c, | 392 | L.EField (e1, c, {field, rest}) => (L'.EField (corifyExp st e1, corifyCon st c, |
393 {field = corifyCon st field, rest = corifyCon st rest}), loc) | 393 {field = corifyCon st field, rest = corifyCon st rest}), loc) |
394 | L.ECut (e1, c, {field, rest}) => (L'.ECut (corifyExp st e1, corifyCon st c, | 394 | L.ECut (e1, c, {field, rest}) => (L'.ECut (corifyExp st e1, corifyCon st c, |
395 {field = corifyCon st field, rest = corifyCon st rest}), loc) | 395 {field = corifyCon st field, rest = corifyCon st rest}), loc) |
396 | L.EFold k => (L'.EFold (corifyKind k), loc) | 396 | L.EFold k => (L'.EFold (corifyKind k), loc) |
397 | L.ECase _ => raise Fail "Corify ECase" | |
397 | L.EWrite e => (L'.EWrite (corifyExp st e), loc) | 398 | L.EWrite e => (L'.EWrite (corifyExp st e), loc) |
398 | 399 |
399 fun corifyDecl ((d, loc : EM.span), st) = | 400 fun corifyDecl ((d, loc : EM.span), st) = |
400 case d of | 401 case d of |
401 L.DCon (x, n, k, c) => | 402 L.DCon (x, n, k, c) => |