34. member? ( define member? ( lambda (a lat) ( cond (( null? lat) #f) (else (or ( eq? ( car lat) a) (member? a ( cdr lat)))) )))
35.
36. (foo baz) ( define remove ( lambda (a lat) ( cond (( null? lat) (quote ())) (( eq? ( car lat) a) ( cdr lat)) (else ( cons ( car lat) (remove a ( cdr lat)))) )))
37.
38. (foo bar baz) ( define insertR ( lambda (new old lat) ( cond (( null? lat) (quote ())) (( eq? ( car lat) old) ( cons old ( cons new ( cdr lat)))) (else ( cons ( car lat) (insertR new old ( cdr lat)))) )))
39.
40. (foo baz bar) ( define insertL ( lambda (new old lat) ( cond (( null? lat) (quote ())) (( eq? ( car lat) old) ( cons new ( cons old ( cdr lat)))) (else ( cons ( car lat) (insertR new old ( cdr lat)))) )))
41. insert ( define insert ( lambda seq ( lambda (new old lat) ( cond (( null? lat) (quote ())) (( eq? ( car lat) old) ( seq new old lat)) (else ( cons ( car lat) (insertR new old ( cdr lat)))) ))))
42. insertR, insertL using HOF ( define seqR ( lambda new old lat ( cons old ( cons new ( cdr lat))) )) ( define seqL ( lambda new old lat ( cons new ( cons old ( cdr lat))) )) ( define insertR (insert seqR)) ( define insertL (insert seqR))