SICP ex2.20