神に捧げるためにSchemeで書いた縦型探索です.
ご満足いただけるように継続渡しで書いてあります.
どうかお納めください.

(define (dfsearch x l scont fcont)
 (if (pair? l)
   (dfsearch x (car l)
        scont
        (lambda ()
         (dfsearch x (cdr l) scont fcont)))
   (if (equal? x l) (scont x) (fcont))))