Always set a default for filter
Use function interfaces from JDK
Fold