sicp-solutions/chapter-2/ex-2.20.scm

10 lines
341 B
Scheme

#lang sicp
(define (same-parity fst . lst)
(define (same-parity-aux parity lst)
(cond ((null? lst) '())
((equal? parity (even? (car lst)))
(cons (car lst) (same-parity-aux parity (cdr lst))))
(else (same-parity-aux parity (cdr lst)))))
(same-parity-aux (even? fst)
(cons fst lst)))