Mercurial > urweb
comparison src/corify.sml @ 69:8e9920db39f2
Corify cfold
author | Adam Chlipala <adamc@hcoop.net> |
---|---|
date | Thu, 26 Jun 2008 09:53:52 -0400 |
parents | c1e21ab42896 |
children | 0ee10f4d73cf |
comparison
equal
deleted
inserted
replaced
68:c1e21ab42896 | 69:8e9920db39f2 |
---|---|
242 | L.CName s => (L'.CName s, loc) | 242 | L.CName s => (L'.CName s, loc) |
243 | 243 |
244 | L.CRecord (k, xcs) => | 244 | L.CRecord (k, xcs) => |
245 (L'.CRecord (corifyKind k, map (fn (c1, c2) => (corifyCon st c1, corifyCon st c2)) xcs), loc) | 245 (L'.CRecord (corifyKind k, map (fn (c1, c2) => (corifyCon st c1, corifyCon st c2)) xcs), loc) |
246 | L.CConcat (c1, c2) => (L'.CConcat (corifyCon st c1, corifyCon st c2), loc) | 246 | L.CConcat (c1, c2) => (L'.CConcat (corifyCon st c1, corifyCon st c2), loc) |
247 | L.CFold _ => raise Fail "Corify CFold" | 247 | L.CFold (k1, k2) => (L'.CFold (corifyKind k1, corifyKind k2), loc) |
248 | 248 |
249 fun corifyExp st (e, loc) = | 249 fun corifyExp st (e, loc) = |
250 case e of | 250 case e of |
251 L.EPrim p => (L'.EPrim p, loc) | 251 L.EPrim p => (L'.EPrim p, loc) |
252 | L.ERel n => (L'.ERel n, loc) | 252 | L.ERel n => (L'.ERel n, loc) |