Mercurial > urweb
comparison src/monoize.sml @ 626:230654093b51
demo/hello compiles with kind polymorphism
author | Adam Chlipala <adamc@hcoop.net> |
---|---|
date | Sun, 22 Feb 2009 17:17:01 -0500 |
parents | 588b9d16b00a |
children | aa2290c32ce2 |
comparison
equal
deleted
inserted
replaced
625:47947d6e9750 | 626:230654093b51 |
---|---|
209 | L.CMap _ => poly () | 209 | L.CMap _ => poly () |
210 | L.CUnit => poly () | 210 | L.CUnit => poly () |
211 | 211 |
212 | L.CTuple _ => poly () | 212 | L.CTuple _ => poly () |
213 | L.CProj _ => poly () | 213 | L.CProj _ => poly () |
214 | |
215 | L.CKAbs _ => poly () | |
216 | L.CKApp _ => poly () | |
217 | L.TKFun _ => poly () | |
214 end | 218 end |
215 in | 219 in |
216 mt env IM.empty | 220 mt env IM.empty |
217 end | 221 end |
218 | 222 |
2263 (L'.ERecord [], loc)), loc)), loc)), loc) | 2267 (L'.ERecord [], loc)), loc)), loc)), loc) |
2264 val ek = (L'.EApp (ekf, ek), loc) | 2268 val ek = (L'.EApp (ekf, ek), loc) |
2265 in | 2269 in |
2266 ((L'.EServerCall (call, ek, t), loc), fm) | 2270 ((L'.EServerCall (call, ek, t), loc), fm) |
2267 end | 2271 end |
2272 | |
2273 | L.EKAbs _ => poly () | |
2274 | L.EKApp _ => poly () | |
2268 end | 2275 end |
2269 | 2276 |
2270 fun monoDecl (env, fm) (all as (d, loc)) = | 2277 fun monoDecl (env, fm) (all as (d, loc)) = |
2271 let | 2278 let |
2272 fun poly () = | 2279 fun poly () = |