Implement ch3.3.5's examples (in progress)