Skip to content

labria/cs61a

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Berkeley CS61AS

This is my attempt at Berkeley's self-paced CS61AS course based on SICP and using Racket (for most of the course). This includes the homework and projects from the self-paced version as well as Brian Harvey's lectures and notes from his final semester at Berkeley.

Course Outline

Progress Lesson Topic (Lecture Video) Reading Notes HW
X 0-1 Introduction to Racket and CS61AS HW
X 0-2 More Practice with Racket SS Ch. 3
SS Ch. 4
SS Ch. 5
SS Ch. 6
HW
X 0-3 Recursion and Racket SS Ch. 11
SS Ch. 12
SS Ch. 13
SS Ch. 14
HW
X 1 Functional Programming (1, 2) Ch. 1 Intro
1.1
Notes HW
. 2 Higher-order Procedures (3, 4)
UI (Kay) (5)
1.3
UI (Kay)
Notes HW
. Project 1: Chatterbot
. 3 UI (Kay) (6)
Recursion & Iteration (7, 8)
1.2 Notes HW
. 4 Data Abstraction (9)
Sequences (10)
Calculator (11)
Ch. 2 Intro
2.1
2.2.1
Notes HW
. Project 2: Turtle Graphics
. 5 Hierarchical Data (12, 13)
Interpreter (14)
2.2.2-3
2.3.1
2.3.3
SS Ch. 18
Notes HW
. 6 Generic Operators (16, 17) 2.4-2.5.2 Notes HW
. 7 Object-oriented Programming (18, 19, 20) OOP Above the Line Notes HW
. 8 Assignment & State (21)
Environments (22, 23)
OOP Below the Line
Ch. 3 Intro
3.1
3.2
Environment Diagrams
Notes HW
. Project 3: Adventure Game
. 9 Mutable Data (24, 25)
Vectors (26)
3.3.1-3 Notes HW
. 10 Streams (33, 34) 3.5.1-3
3.5.5
Notes HW
. 11 Metacircular Evaluator (36, 37) Ch. 4 Intro
4.1.1-6
Notes HW
. 12 Analyzing Evaluator (40)
Lazy Evaluator (41)
Therac (35)
4.1.7
4.2
Therac
Notes
Notes
HW
. Mini Python Intro HW
. Project 4: Schython
. 13 Logic Programming (42, 43) 4.4.1-3 Notes HW
. 14 Client-server Programming (30)
Concurrency (31, 32)
MapReduce (38, 39)
3.4 Notes
MR Pt. 1
MR Pt. 2
HW

Environment

  1. Set up Racket
  2. Set up STk

Grader

cd homework
racket -tm grader.rkt -- tests/hwX-tests.rkt hwX.rkt <procedure name>

Note: Replace "hwX-tests.rkt" and "hwX.rkt" with the actual filenames. Only include the procedure name if you want to check an individual procedure; otherwise the grader will check the whole program.

Resources

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages