Mercurial > urweb
comparison src/jscomp.sml @ 1176:51e596feec37
Tone down Reduce and compensate with a new push-lambda-inside-case rule in MonoOpt; expand more Basis synonyms in Monoize
author | Adam Chlipala <adamc@hcoop.net> |
---|---|
date | Tue, 02 Mar 2010 16:00:48 -0500 |
parents | 7a31e0cf25e9 |
children | 26fed2c4f5be |
comparison
equal
deleted
inserted
replaced
1175:79f487f51d9f | 1176:51e596feec37 |
---|---|
443 3) | 443 3) |
444 in | 444 in |
445 case p of | 445 case p of |
446 Prim.String s => | 446 Prim.String s => |
447 str ("\"" ^ String.translate jsChar s ^ "\"") | 447 str ("\"" ^ String.translate jsChar s ^ "\"") |
448 | Prim.Char ch => str ("'" ^ jsChar ch ^ "'") | 448 | Prim.Char ch => str ("\"" ^ jsChar ch ^ "\"") |
449 | _ => str (Prim.toString p) | 449 | _ => str (Prim.toString p) |
450 end | 450 end |
451 | 451 |
452 fun jsPat (p, _) = | 452 fun jsPat (p, _) = |
453 case p of | 453 case p of |
1171 end | 1171 end |
1172 | 1172 |
1173 | EJavaScript (m, e') => | 1173 | EJavaScript (m, e') => |
1174 (foundJavaScript := true; | 1174 (foundJavaScript := true; |
1175 jsExp m outer (e', st) | 1175 jsExp m outer (e', st) |
1176 handle CantEmbed _ => (e, st)) | 1176 handle CantEmbed t => ((*Print.preface ("Can't embed", MonoPrint.p_typ MonoEnv.empty t);*) |
1177 (e, st))) | |
1177 | 1178 |
1178 | ESignalReturn e => | 1179 | ESignalReturn e => |
1179 let | 1180 let |
1180 val (e, st) = exp outer (e, st) | 1181 val (e, st) = exp outer (e, st) |
1181 in | 1182 in |