A Better Way

Better to let one procedure do the work of creating any procedure that multiplies by a scaling factor:
     (define make-multiplier	
       (lambda (scaling-factor)	
         (lambda (x) (* x scaling-factor))))

     (define double (make-multiplier 2))
     (define triple (make-multiplier 3))
     (define quadruple (make-multiplier 4))

     (double 7) ⇒ 14
     (triple 12) ⇒ 36
     (quadruple 10) ⇒ 40
make-multiplier acts like a procedure factory.

Exercise 5.7: very similar (use expt)