Your original search function doesn't work--here's a working version.
<pre>
(define (search lst p?)
(cond ((null? lst) #f)
((pair? lst) (or (search (car lst) pred?)
(search (cdr lst) pred?)))
((pred? lst) lst)
(else #f)))
</pre>
↧