comparison src/expl_util.sml @ 68:c1e21ab42896

Explify cfold
author Adam Chlipala <adamc@hcoop.net>
date Thu, 26 Jun 2008 09:51:28 -0400
parents d609820c5834
children 0ee10f4d73cf
comparison
equal deleted inserted replaced
67:9f89f0b00b84 68:c1e21ab42896
136 S.bind2 (mfc ctx c1, 136 S.bind2 (mfc ctx c1,
137 fn c1' => 137 fn c1' =>
138 S.map2 (mfc ctx c2, 138 S.map2 (mfc ctx c2,
139 fn c2' => 139 fn c2' =>
140 (CConcat (c1', c2'), loc))) 140 (CConcat (c1', c2'), loc)))
141 | CFold (k1, k2) =>
142 S.bind2 (mfk k1,
143 fn k1' =>
144 S.map2 (mfk k2,
145 fn k2' =>
146 (CFold (k1', k2'), loc)))
141 in 147 in
142 mfc 148 mfc
143 end 149 end
144 150
145 fun mapfold {kind = fk, con = fc} = 151 fun mapfold {kind = fk, con = fc} =