About

Introduction

"Structure and Interpretation of Computer Programs" is a text that was used in a course at MIT as an introduction to Computer Science. Over the years it has built up a reputation as the rite of passage for enthusiastic students and bloggers to become Computer Science wizards, if they finish reading it that is. You can find a PDF of the book here, along with the associated MIT OpenCourseWare course.

When I read a (good) book with exercises, I like to keep a log with all my answers to those exercises. I feel like I've not got the best of the book otherwise. That's what this website is. Ideally, I'd like to take notes, but this book is so vast that if I did that, I would never finish.

This is not the first time I've tried to read this book. That was what I did during the COVID pandemic, from 2020 up until 2022, starting at the age of 13. Needless to say, my writing was not great and I didn't follow a lot of the maths. You can find the old site here. Five years later, at the age of 18, this is just my latest attempt. Maybe second time lucky?

Local setup

Since Fedora doesn't package MIT Scheme, I'm using Racket instead along with the SICP package. To streamline the literate style, I'm using Emacs along with Org Babel so that I can iterate on both my prose and my code seamlessly from just my editor in a single buffer.

Website setup

This website is generated by Hugo, with the Hyde theme. It's hosted on GitHub Pages in this git repository. I'm using giscus for comments, and umami for analytics.

Comments