Structure and Interpretation of Computer Programs. I need to implement a superset of lisp so I figured why not go to the basics. It has been a very fun read so far. Was particularly happy to see the chapter that starts with a quote from On Human Understanding.