Skip to content

Solved exercises from the book Structure and Interpretation of Computer Programs

Notifications You must be signed in to change notification settings

squarebat/SICP-exercises

Repository files navigation

SICP-exercises

Solved exercises from the book Structure and Interpretation of Computer Programs.

So what is SICP

  • Structure and Interpretation of Computer Programs is a computer science textbook written by Harold Abelson and Gerald Jay Sussman with Julie Sussman.
  • It teaches fundamental principles of computer programming - recursion, abstraction, modularity, and programming language design and implementation.
  • Read more about the book here here.
  • Read the book here (It's freely available btw).

Why am I reading it? (And why you should too!)

  • It provides intuition into different programming paradigms and builds foundation for more advanced concepts.
  • It doesn't dive deep into the details of a single programming language, rather it teaches how to reason about the programming process. It has given me profound insight into how computer programs are formed.
  • There are 100s of exercise. Each and every one of those teaches an important new idea. That's a lot of ideas.
  • On the off-chance, you may also find the answer to life, the universe and everything.
  • Still unconvinced? Read Brian Harvey's article Why SICP Matters. And Peter Norvig's review on SICP.
  • If you know me, you have probably heard all of this. You might also be convinced that I am part of a cult, which I assure you, I am.

Tools

  • I used Drracket for the first 2 chapters of SICP. It's super simple to use and you will be able to focus completely on the exercises. Here's the installation guide.
  • Later, I shifted to using Emacs since I have always wanted to. I started out with Doom Emacs and it is super fun. Here's a guide on how to get started with it. Here are some useful shortcuts I use for solving the exercises.

Here's a cool exercise I did

big-brain.jpeg

About

Solved exercises from the book Structure and Interpretation of Computer Programs

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published