Code Review
Compare your solutions
#| BEGIN (Write your solution here) |#
(define (fold-left op initial sequence)
(define (iter result rest)
(if (null? rest)
result
(iter (op result (car rest))
(cdr rest))))
(iter initial sequence))
(define (accumulate op initial sequence)
(if (null? sequence)
initial
(op (car sequence)
(accumulate op
initial
(cdr sequence)))))
(define fold-right accumulate)
(define (reverse-right sequence)
(fold-right
(lambda (x y) (append y (list x))) '() sequence))
(define (reverse-left sequence)
(fold-left
(lambda (x y) (cons y x)) '() sequence))
#| END |#