Mercurial > urweb
diff lib/ur/list.ur @ 1519:ada582d07ae1
List.find
author | Adam Chlipala <adam@chlipala.net> |
---|---|
date | Sun, 24 Jul 2011 15:47:09 -0400 |
parents | 3061d1bf4b2d |
children | dde3bd82cb3d |
line wrap: on
line diff
--- a/lib/ur/list.ur Sun Jul 24 14:49:40 2011 -0400 +++ b/lib/ur/list.ur Sun Jul 24 15:47:09 2011 -0400 @@ -206,6 +206,20 @@ fold [] end +fun find [a] f = + let + fun find' ls = + case ls of + [] => None + | x :: ls => + if f x then + Some x + else + find' ls + in + find' + end + fun search [a] [b] f = let fun search' ls =