In the BCL, they've introduced the Predicate<T> delegate. I understand it "documents" well the intent. However, everywhere a method accepts a Predicate<T> parameter, I can say bye-bye to my existing expressions I've build for LINQ.