Mercurial > urweb
diff src/list_util.sml @ 26:4ab19c19665f
Closure conversion
author | Adam Chlipala <adamc@hcoop.net> |
---|---|
date | Tue, 10 Jun 2008 15:56:33 -0400 |
parents | bfa2e9ae4df8 |
children | 1c91c5e6840f |
line wrap: on
line diff
--- a/src/list_util.sml Tue Jun 10 13:14:45 2008 -0400 +++ b/src/list_util.sml Tue Jun 10 15:56:33 2008 -0400 @@ -60,6 +60,21 @@ mf end +fun foldlMap f s = + let + fun fm (ls', s) ls = + case ls of + nil => (rev ls', s) + | h :: t => + let + val (h', s') = f (h, s) + in + fm (h' :: ls', s') t + end + in + fm ([], s) + end + fun search f = let fun s ls =