I made a course page for anyone interested in taking SICP in future
romanbird.github.ioIt's modelled off the Berkeley 61A lectures from 2011, before they switched away from Scheme. It collects material strewn around dead links and abandoned course pages and puts it in an easy to digest format, with all the materials you need provided in a repo.
I self-studied the entire book and did all the problems around the beginning of Covid.
The biggest roadblock I found was the "picture language" problems in chapter 2 didn't have an obvious implementation of "painters" in MIT scheme. There was some libraries I found in 25-year old 6.001 course webpages, but they were not functional.
Fortunately, there was a recent Racket library that was specifically designed for that chapter of SICP.
I never did the SICP picture language exercises, but the book Concrete Abstractions* has some very similar exercises, but done through a simple library that outputs EPS.
Isn't the How to Design Programs 2e (HTDP) book a kind of successor to SICP.
"The Structure and Interpretation of the Computer Science Curriculum" https://users.cs.northwestern.edu/~robby/pubs/papers/htdp-si...
The authors of HtDP on SICP.
HTDP is (quite a bit) easier, and only really derived from the first few chapters of SICP if that. The course I recommend as a pre-req is actually based of HTDP, I think it really helps with the much more comprehensive SICP
It's a shame the torrents don't seem to have any seeders; they're very good lectures, and fairly small file sizes.
a) yay b) I'm surprised i don't see mention of racket in here.
My understanding is that their implementation of MIT scheme + the VERY beginner friendly aspects of Racket's Dr. Racket editor make it the best place for folks to work on this course's code. Especially since so few of them will have had scheme experience.
I certainly found it nice.