Essentials of Programming Languages, 3rd Edition Exercises