all predicate stream returns
True if every element in
stream matches the predicate.
all consumes as few elements as possible, ending consumption if
any element fails the predicate.
ghci> is <- Streams.fromList [1, 2, 3]
ghci> Streams.all (< 0) is -- Consumes one element
False
ghci> Streams.read is
Just 2
ghci> Streams.all odd is -- Only 3 remains
True