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