comparison src/mono_reduce.sml @ 253:7f6620853c36

Monoized a WHERE clause with a comparison
author Adam Chlipala <adamc@hcoop.net>
date Sun, 31 Aug 2008 14:27:01 -0400
parents 7e9bd70ad3ce
children 40c33706d887
comparison
equal deleted inserted replaced
252:7e9bd70ad3ce 253:7f6620853c36
179 let 179 let
180 val e' = (ELet (x2, t2, e1, 180 val e' = (ELet (x2, t2, e1,
181 (ELet (x1, t1, b1, 181 (ELet (x1, t1, b1,
182 liftExpInExp 1 b2), loc)), loc) 182 liftExpInExp 1 b2), loc)), loc)
183 in 183 in
184 Print.prefaces "ELet commute" [("e", MonoPrint.p_exp env (e, loc)), 184 (*Print.prefaces "ELet commute" [("e", MonoPrint.p_exp env (e, loc)),
185 ("e'", MonoPrint.p_exp env e')]; 185 ("e'", MonoPrint.p_exp env e')];*)
186 #1 (reduceExp env e') 186 #1 (reduceExp env e')
187 end 187 end
188 | EApp ((ELet (x, t, e, b), loc), e') => 188 | EApp ((ELet (x, t, e, b), loc), e') =>
189 #1 (reduceExp env (ELet (x, t, e, 189 #1 (reduceExp env (ELet (x, t, e,
190 (EApp (b, liftExpInExp 0 e'), loc)), loc)) 190 (EApp (b, liftExpInExp 0 e'), loc)), loc))