my solutions for the exercises of a great programming book