Source code for assignments and projects for UC Berkeley's CS 61A course, which follows the Structure and Interpretation of Computer Programs (SICP) book.
  • Scheme 83.1%
  • Shell 14.4%
  • Dockerfile 2.5%
Find a file
datsudo 86181a52a5 Revert "Fix LaTeX again"
Fuck

This reverts commit 2000103f26.
2023-12-01 12:05:52 +08:00
lib Add roots lib 2023-09-07 14:26:16 +08:00
week1 Rename week 1 folder 2023-08-08 15:16:29 +08:00
week2 Revert "Fix LaTeX again" 2023-12-01 12:05:52 +08:00
.dockerignore Update dockerignore 2023-08-07 17:37:55 +08:00
docker-compose.yml Add initial files 2023-08-07 01:22:23 +08:00
Dockerfile Add initial files 2023-08-07 01:22:23 +08:00
README Update README 2023-08-22 15:11:01 +08:00
sicp Fix: checking if docker is running 2023-08-20 01:41:23 +08:00

sicp-stk
========
Source code for assignments and projects for  UC Berkeley's  CS 61A course [1],
which follows the Structure and  Interpretation  of Computer Programs (SICP) by
Abelson & Sussman [2].


Setting up
==========
1. Make 'sicp.sh' executable by running
   -------------
   chmod +x sicp
   -------------

2. Build the docker image that comprises of packages:
   - UCB STK (scheme modified by UC Berkeley)
   - MIT Scheme (scheme version that SICP book uses)

   by running:
   ---------------
   ./sicp build
   ---------------

3. Run the container. try running 'stk-simply' and start doing scheme stuff
   ----------
   ./sicp run
   ----------

4. To update image contents:
   ---------------------------------------------
   ./sicp up 
   ---------------------------------------------


Contents
========

There are folders for each week that contains homeworks provided in the
course's homepage. Inside the 'lib/' folder are the programs from
lectures. Some of them are needed for some homeworks. All of these are
publicly available in the CS 61A homepage [1].

For using Docker:
- first, I want a clean local environment just to make sure
- lastly, UCB STK only works for 32-bit machines. That's why I'm using the
  i386/ubuntu docker image for setting this up



--------------------------------------------------

[1] https://people.eecs.berkeley.edu/~bh/61a-pages
[2] https://web.mit.edu/6.001/6.037/sicp.pdf