comparison src/monoize.sml @ 283:c0e4ac23522d

'error' function
author Adam Chlipala <adamc@hcoop.net>
date Sun, 07 Sep 2008 10:02:27 -0400
parents 286f734db702
children ffe5b01908ae
comparison
equal deleted inserted replaced
282:0236d9412ad2 283:c0e4ac23522d
1277 _), _), 1277 _), _),
1278 _), _), 1278 _), _),
1279 _), _), 1279 _), _),
1280 xml) => monoExp (env, st, fm) xml 1280 xml) => monoExp (env, st, fm) xml
1281 1281
1282 | L.ECApp ((L.EFfi ("Basis", "error"), _), t) =>
1283 let
1284 val t = monoType env t
1285 in
1286 ((L'.EAbs ("s", (L'.TFfi ("Basis", "string"), loc), t,
1287 (L'.EError ((L'.ERel 0, loc), t), loc)), loc),
1288 fm)
1289 end
1290
1282 | L.EApp (e1, e2) => 1291 | L.EApp (e1, e2) =>
1283 let 1292 let
1284 val (e1, fm) = monoExp (env, st, fm) e1 1293 val (e1, fm) = monoExp (env, st, fm) e1
1285 val (e2, fm) = monoExp (env, st, fm) e2 1294 val (e2, fm) = monoExp (env, st, fm) e2
1286 in 1295 in