This is a record of my working through Structure and Interpretation of Computer Programs, a classic text on programming. Each section covers the exercises included in the text. Actually, I have decided to allow one exercise per chapter to be skipped. The sort of questions I skip are usually the very open-ended ones, or those that seem to add little to what I’ve learned. As mentioned, there are only a very small number of these.

My posts are meant to help anyone studying the book on their own, as I did. I try to provide a testing-based approach, to give some context in what the exercises should try to do. I always encourage anyone solving them to add to what I’ve done. Hopefully what I’ve provided is a good starting point for you.

Generally each set of exercises is introduced without indication of how to solve them, but may include a discussion of how to test possible solutions. Just a link to the exercise set on Github is provided, with some context of what’s being covered. A second post on the section (the ‘solution’) will discuss the exercises in more detail.

The whole repository can be found at http://github.com/parzival/SICP.