comparison src/elab_util.sml @ 445:dfc8c991abd0

Replace 'with' with '++'
author Adam Chlipala <adamc@hcoop.net>
date Fri, 31 Oct 2008 09:30:22 -0400
parents b85e6ba56618
children b77863cd0be2
comparison
equal deleted inserted replaced
444:f45f23ae20ed 445:dfc8c991abd0
307 S.bind2 (mfc ctx field, 307 S.bind2 (mfc ctx field,
308 fn field' => 308 fn field' =>
309 S.map2 (mfc ctx rest, 309 S.map2 (mfc ctx rest,
310 fn rest' => 310 fn rest' =>
311 (EField (e', c', {field = field', rest = rest'}), loc))))) 311 (EField (e', c', {field = field', rest = rest'}), loc)))))
312 | EWith (e1, c, e2, {field, rest}) => 312 | EConcat (e1, c1, e2, c2) =>
313 S.bind2 (mfe ctx e1, 313 S.bind2 (mfe ctx e1,
314 fn e1' => 314 fn e1' =>
315 S.bind2 (mfc ctx c, 315 S.bind2 (mfc ctx c1,
316 fn c' => 316 fn c1' =>
317 S.bind2 (mfe ctx e2, 317 S.bind2 (mfe ctx e2,
318 fn e2' => 318 fn e2' =>
319 S.bind2 (mfc ctx field, 319 S.map2 (mfc ctx c2,
320 fn field' => 320 fn c2' =>
321 S.map2 (mfc ctx rest, 321 (EConcat (e1', c1', e2', c2'),
322 fn rest' => 322 loc)))))
323 (EWith (e1', c', e2', {field = field', rest = rest'}),
324 loc))))))
325 | ECut (e, c, {field, rest}) => 323 | ECut (e, c, {field, rest}) =>
326 S.bind2 (mfe ctx e, 324 S.bind2 (mfe ctx e,
327 fn e' => 325 fn e' =>
328 S.bind2 (mfc ctx c, 326 S.bind2 (mfc ctx c,
329 fn c' => 327 fn c' =>