3 [sicp [ch2-2 :only (accumulate)]
4 [ex2_36 :only (accumulate-n)]
5 [ex2_38 :only (fold-right fold-left)]]))
7 ;; Complete the following definitions of reverse (exercise 2.18) in
8 ;; terms of fold-right and fold-left from exercise 2.38:
10 ;; (define (reverse sequence)
11 ;; (fold-right (lambda (x y) <??>) nil sequence))
12 ;; (define (reverse sequence)
13 ;; (fold-left (lambda (x y) <??>) nil sequence))
14 (defn reverse-with-foldr [sequence]
20 (defn reverse-with-foldl [sequence]
26 (deftest test-reverses
30 (reverse-with-foldr s1) (reverse s1)
31 (reverse-with-foldl s1) (reverse s1)
32 (reverse-with-foldr s2) (reverse s2)
33 (reverse-with-foldl s2) (reverse s2))))