SICP ex 2.45

(define (split b1 b2)
  (lambda (painter n)
    (if (= n 0)
        painter
        (let ((smaller ((split b1 b2) painter (- n 1))))
          (b1 painter (b2 smaller smaller))))))