Mercurial > urweb
comparison src/monoize.sml @ 1365:b02cb9da5686
Changed uw_Basis_time to store microseconds
author | Adam Chlipala <adam@chlipala.net> |
---|---|
date | Fri, 24 Dec 2010 18:08:29 -0500 |
parents | 02fc16faecf3 |
children | 44a12a321150 |
comparison
equal
deleted
inserted
replaced
1364:0dec38af601c | 1365:b02cb9da5686 |
---|---|
928 | L.EFfi ("Basis", "eq_time") => | 928 | L.EFfi ("Basis", "eq_time") => |
929 ((L'.EAbs ("x", (L'.TFfi ("Basis", "time"), loc), | 929 ((L'.EAbs ("x", (L'.TFfi ("Basis", "time"), loc), |
930 (L'.TFun ((L'.TFfi ("Basis", "time"), loc), (L'.TFfi ("Basis", "bool"), loc)), loc), | 930 (L'.TFun ((L'.TFfi ("Basis", "time"), loc), (L'.TFfi ("Basis", "bool"), loc)), loc), |
931 (L'.EAbs ("y", (L'.TFfi ("Basis", "time"), loc), | 931 (L'.EAbs ("y", (L'.TFfi ("Basis", "time"), loc), |
932 (L'.TFfi ("Basis", "bool"), loc), | 932 (L'.TFfi ("Basis", "bool"), loc), |
933 (L'.EBinop (L'.NotInt, "==", (L'.ERel 1, loc), (L'.ERel 0, loc)), loc)), loc)), loc), | 933 (L'.EFfiApp ("Basis", "eq_time", [(L'.ERel 1, loc), (L'.ERel 0, loc)]), loc)), loc)), loc), |
934 fm) | 934 fm) |
935 | 935 |
936 | L.ECApp ((L.EFfi ("Basis", "mkEq"), _), t) => | 936 | L.ECApp ((L.EFfi ("Basis", "mkEq"), _), t) => |
937 let | 937 let |
938 val t = monoType env t | 938 val t = monoType env t |
1110 fun boolBin s = | 1110 fun boolBin s = |
1111 (L'.EAbs ("x", (L'.TFfi ("Basis", "bool"), loc), | 1111 (L'.EAbs ("x", (L'.TFfi ("Basis", "bool"), loc), |
1112 (L'.TFun ((L'.TFfi ("Basis", "bool"), loc), (L'.TFfi ("Basis", "bool"), loc)), loc), | 1112 (L'.TFun ((L'.TFfi ("Basis", "bool"), loc), (L'.TFfi ("Basis", "bool"), loc)), loc), |
1113 (L'.EAbs ("y", (L'.TFfi ("Basis", "bool"), loc), | 1113 (L'.EAbs ("y", (L'.TFfi ("Basis", "bool"), loc), |
1114 (L'.TFfi ("Basis", "bool"), loc), | 1114 (L'.TFfi ("Basis", "bool"), loc), |
1115 (L'.EBinop (L'.NotInt, s, (L'.ERel 1, loc), (L'.ERel 0, loc)), loc)), loc)), loc) | 1115 (L'.EFfiApp ("Basis", s, [(L'.ERel 1, loc), (L'.ERel 0, loc)]), loc)), loc)), loc) |
1116 in | 1116 in |
1117 ordEx ((L'.TFfi ("Basis", "bool"), loc), | 1117 ordEx ((L'.TFfi ("Basis", "bool"), loc), |
1118 boolBin "<", | 1118 boolBin "lt_time", |
1119 boolBin "<=") | 1119 boolBin "le_time") |
1120 end | 1120 end |
1121 | L.EFfi ("Basis", "ord_string") => | 1121 | L.EFfi ("Basis", "ord_string") => |
1122 let | 1122 let |
1123 fun boolBin s = | 1123 fun boolBin s = |
1124 (L'.EAbs ("x", (L'.TFfi ("Basis", "string"), loc), | 1124 (L'.EAbs ("x", (L'.TFfi ("Basis", "string"), loc), |
1156 (L'.EAbs ("y", (L'.TFfi ("Basis", "time"), loc), | 1156 (L'.EAbs ("y", (L'.TFfi ("Basis", "time"), loc), |
1157 (L'.TFfi ("Basis", "bool"), loc), | 1157 (L'.TFfi ("Basis", "bool"), loc), |
1158 (L'.EBinop (L'.NotInt, s, (L'.ERel 1, loc), (L'.ERel 0, loc)), loc)), loc)), loc) | 1158 (L'.EBinop (L'.NotInt, s, (L'.ERel 1, loc), (L'.ERel 0, loc)), loc)), loc)), loc) |
1159 in | 1159 in |
1160 ordEx ((L'.TFfi ("Basis", "time"), loc), | 1160 ordEx ((L'.TFfi ("Basis", "time"), loc), |
1161 boolBin "<", | 1161 boolBin "lt_time", |
1162 boolBin "<=") | 1162 boolBin "le_time") |
1163 end | 1163 end |
1164 | L.ECApp ((L.EFfi ("Basis", "mkOrd"), _), t) => | 1164 | L.ECApp ((L.EFfi ("Basis", "mkOrd"), _), t) => |
1165 let | 1165 let |
1166 val t = monoType env t | 1166 val t = monoType env t |
1167 val b = (L'.TFfi ("Basis", "bool"), loc) | 1167 val b = (L'.TFfi ("Basis", "bool"), loc) |