Approximating the Golden Ratio

   (define approximate-golden-ratio
     (lambda (tolerance)

       (define find-approximation-from
         (lambda (starting-point)
           (if (good-enough? starting-point)
               starting-point
               (find-approximation-from (improve starting-point)))))

       (define good-enough?
         (lambda (approximation)
           (< (/ 1 (square (denominator approximation)))
              tolerance)))

       (find-approximation-from 1)))

   > (approximate-golden-ratio 1/50000)
   1 144/233