exercises of programming pearls