SICP/chapter_4: exercise 27~29