Implement ch3.1.3's examples