Exercises in this lecture   Go to the notes, in which this exercise belongs -- Keyboard shortcut: 'u'   Alphabetic index   Course home   

Exercise solution:
A straightforward filter function


Here follows a straightforward implementation of filter:

(define (filter pred lst)
  (cond ((null? lst) '())
        ((pred (car lst)) 
           (cons (car lst) (filter pred (cdr lst))))
        (else (filter pred (cdr lst)))))