Код Ревью

Сравни свои решения

    #| 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 |#