diff src/explify.sml @ 211:e86411f647c6

Initial type class support
author Adam Chlipala <adamc@hcoop.net>
date Sat, 16 Aug 2008 14:32:18 -0400
parents 63a2f2322c1f
children 0343557355fc
line wrap: on
line diff
--- a/src/explify.sml	Sat Aug 16 12:35:46 2008 -0400
+++ b/src/explify.sml	Sat Aug 16 14:32:18 2008 -0400
@@ -128,6 +128,9 @@
       | L.SgiSgn (x, n, sgn) => SOME (L'.SgiSgn (x, n, explifySgn sgn), loc)
       | L.SgiConstraint _ => NONE
       | L.SgiTable _ => raise Fail "Explify SgiTable"
+      | L.SgiClassAbs (x, n) => SOME (L'.SgiConAbs (x, n, (L'.KArrow ((L'.KType, loc), (L'.KType, loc)), loc)), loc)
+      | L.SgiClass (x, n, c) => SOME (L'.SgiCon (x, n, (L'.KArrow ((L'.KType, loc), (L'.KType, loc)), loc),
+                                                 explifyCon c), loc)
 
 and explifySgn (sgn, loc) =
     case sgn of