:: (a -> Bool) -> [a] -> Maybe a

The find function takes a predicate and a list and returns the first element in the list matching the predicate, or Nothing if there is no such element. For the result to be Nothing, the list must be finite.
>>> find (> 4) [1..]
Just 5
>>> find (< 0) [1..10]
Nothing
An auxiliary you might expect to find in Data.List
Finds the element in a list that is the succeessor of the element matching a predicate.
The find function takes a predicate and a structure and returns the leftmost element of the structure matching the predicate, or Nothing if there is no such element.

Examples

Basic usage:
>>> find (> 42) [0, 5..]
Just 45
>>> find (> 12) [1..7]
Nothing
The find function takes a predicate and a structure and returns the leftmost element of the structure matching the predicate, or Nothing if there is no such element.
O(n) Yield Just the first element matching the predicate or Nothing if no such element exists.
The find function takes a predicate and a vector and returns the leftmost element of the vector matching the predicate, or Nothing if there is no such element.