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)