purpose: to construct a list from all those items on a list for which the predicate holds
Intermediate Student with Lambda Language