Implement ch3.5.2's examples
Answer ex3.53