exercise 1.23
Merge github.com:grahaminn/SICP
exercise 1-30