Sicp 2.2.2, 2.2.3