CS 61A Fall 2015
Announcements
are posted
Check your grades on
Regrade request form:
Homework 11 due Thursday 12/10: complete the
1 extra credit point to all submitters if 85% of students submit
Homework 12 due Thursday 12/10:
Seating assignments for the
will be emailed
on Thursday and Friday will be
held during normal discussion times
Homework 10 is to complete Lab 14, due Thursday 12/3
Quiz 4 due Thursday 12/3
Homework 11 due Wednesday 12/9: complete the online course survey (posted soon)
1 extra credit point to all submitters if 85% of students submit
Homework 12 due Wednesday 12/9: vote for your favorite recursive art (posted soon)
Since only 24/25 homework points were assigned this semester, everyone gets a free point
Friday 12/4 is video-only (no live lecture)
on Thursday 12/3 @ 1pm in 190 Doe Library
Homework 10 is to complete Lab 14, due Thursday 12/3
Come to lab: you need to set up a
Unique chance to use a large computing cluster
Scheme Recursive Art Contest Entries due Monday 11/30
Submit by emailing code and a screenshot to art@cs61a.org
Ants composition revisions due Tuesday 12/1
Quiz 4 released Tuesday 12/1 due Thursday 12/3
Last day of lecture will be Wednesday 12/2
No videos on 12/2 (but there will be a screencast)
Please come on 12/2 (and fill out the HKN survey at the end)
Friday 12/4 is video-only (no live lecture)
due Wednesday 11/25
No lab Tuesday 11/24 or Wednesday 11/25
Scheme Recursive Art Contest Entries due Monday 11/30
Submit by emailing code and a screenshot to art@cs61a.org
Ants composition revisions due Tuesday 12/1
Quiz 4 released Tuesday 12/1 due Thursday 12/3
Last day of lecture will be Wednesday 12/2
No videos on 12/2 (but there will be a screencast)
Please come on 12/2 (and fill out the HKN survey at the end)
Friday 12/4 is video-only (no live lecture)
due Wednesday 11/25
Scheme Recursive Art Contest Entries due Monday 11/30
Submit by emailing code and a screenshot to art@cs61a.org
Ants composition revisions due Tuesday 12/1
Quiz 4 released Tuesday 12/1 due Thursday 12/3
Last day of lecture will be Wednesday 12/2
No videos on 12/2 (but there will be a screencast)
Please come on 12/2 (and fill out the HKN survey at the end)
Friday 12/4 is video-only (no live lecture)
due Thursday 11/19
Homework 9 due Wednesday 11/25
Scheme Recursive Art Contest Entries due Monday 11/30
Ants composition revisions due Tuesday 12/1
Extra staff in office hours this week
B6 Evans is open 10am-8pm on Wed 11/18 and Thurs 11/19
(recommended) or use
to follow along with
lectures 30-33
due Thursday 11/19
1 extra credit point for submitting Part 2 by Monday 11/16
Scheme Recursive Art Contest Entries due Monday 11/30
Extra staff in office hours next week
B6 Evans is open 10am-8pm Monday-Thursday
Extra lecture on logical programming languages Monday 11/16 @ 6:30pm in A1
Hearst Annex
(recommended) or use
to follow along with
lectures 30-33
due Thursday 11/19
1 extra credit point for submitting Part 2 by Monday 11/16
Extra staff in office hours next week
B6 Evans is open 10am-8pm Monday-Thursday
Extra lecture on logical programming languages Monday 11/16 @ 6:30pm in A1
Hearst Annex
Download the
along with Lecture 29
(recommended) or use
to follow along with
lectures 30-33
Download the
along with Lecture 29
due Thursday 11/19
1 extra credit point for submitting Part 1 by Tuesday 11/10
1 extra credit point for submitting Part 2 by Monday 11/16
Extra staff in office hours this week and next week
B6 Evans is open 10am-8pm Monday-Thursday
No office hours on Wednesday 11/11
Extra lecture on lazy evaluation Monday 11/9 @ 6:30pm in A1 Hearst Annex
due Friday 11/6
due Thursday 11/19
1 extra credit point for submitting Part 1 by Tuesday 11/10
1 extra credit point for submitting Part 2 by Monday 11/16
Homework 8 due Wednesday 11/4
Quiz 3 released Wednesday 11/4 at 3pm due Friday 11/6
Scheme project due Thursday 11/19
1 extra credit point for submitting Part 1 by Tuesday 11/10
1 extra credit point for submitting Part 2 by Monday 11/16
Project 2 (Maps) composition revisions due Monday 11/2
Midterm 2 regrade requests due Monday 11/2
Homework 8 due Wednesday 11/4
Quiz 3 released Wednesday 11/4 at 3pm due Friday 11/6
Extra Lecture on Ray Tracing Monday 11/2 @ 6:30pm in A1 Hearst Annex
example from lecture or the
Project 2 (Maps) composition revisions due Monday 11/2
Midterm 2 regrade requests due Monday 11/2
Homework 8 due Wednesday 11/4
Quiz 3 due Friday 11/6
due Thursday 10/29
Project 2 (Maps) composition revisions due Monday 11/2
Midterm 2 regrade requests due Monday 11/2
Homework 8 due Wednesday 11/4
Quiz 3 due Friday 11/6
Midterm 2 was too hard (sorry!)
+5 points for all students to match Fall 14 & Spring 15 distributions
due Thursday 10/29
Ask questions in lab!
Project 2 (Maps) composition revisions due Monday 11/2
Homework 8 due Wednesday 11/4
Quiz 3 due Friday 11/6
due Wednesday 10/21
The only required portion is a mid-semester survey (5 minutes)
on Thursday 10/22 @ 7pm
Seating assignments will be sent by email on Wednesday 10/21
No lecture Wednesday 10/21
No discussion Thursday 10/22 or Friday 10/23
Lecture Friday 10/23 is a video
due Friday 10/16
Don't copy someone else's solution to QueenAnt
Don't copy someone else's solution to the extra credit problem
If you did already, resubmit with those answers blank before the deadline
due Wednesday 10/21
The only required portion is a mid-semester survey (5 minutes)
Optional questions are intended to be useful (challenging) review
on Thursday 10/22 @ 7pm
Focus on recursion, mutation, objects, & hierarchical data (e.g., trees)
Review sessions on Sunday 10/18, 6-7:30 PM and 7:30-9 PM in 155 Dwinelle
Seating assignments will be sent by email on Wednesday 10/21
are due Friday 10/16
No lecture next Wednesday 10/21
No discussion next Thursday 10/22 or Friday 10/23
Lecture next Friday 10/23 is a video, but a great video
due Friday 10/16
2 bonus points for early submission by Wednesday 10/14
1 bonus point for early submission by Thursday 10/15
Project party Thursday 6pm-9pm in B6 Evans
on Thursday 10/22 @ 7pm
Focus on recursion, mutation, objects, & hierarchical data (e.g., trees)
TA review session on Sunday 10/18, 6-8 PM in 155 Dwinelle
Seating assignments will be sent by email on Wednesday 10/21
are due Friday 10/16
Homework 6 due Wednesday 10/21
The only required portion is a mid-semester survey
Optional questions are intended to be useful review
Guerrilla section Monday 10/12 7pm-9pm on objects
Quiz 2 due Monday 10/12 @ 11:59pm
Don't copy your friends' the quiz is only 2 points
If you don't solve the problems, there's no need to panic
due Friday 10/16
2 bonus points for early submission by Wednesday 10/14
1 bonus point for early submission by Thursday 10/15
Project party Thursday 6pm-9pm in B6 Evans
Midterm 2 on Thursday 10/22 @ 7pm
Guerrilla section Monday 10/12 7pm-9pm on objects
Quiz 2 due Monday 10/12 @ 11:59pm
Please work alone
See Piazza for instructions on how to ask questions
(extended) due Friday 10/16
2 bonus points for early submission by Wednesday 10/14
1 bonus point for early submission by Thursday 10/15
Midterm 2 on Thursday 10/22 @ 7pm
due Wednesday 10/7
Homework Party Wednesday 10/7 7pm-9pm
Quiz 2 (extended) released Friday 10/9 is due Monday 10/12
(extended) due Friday 10/16
2 bonus points for early submission by Wednesday 10/14
1 bonus point for early submission by Thursday 10/15
Midterm 2 on Thursday 10/22 @ 7pm
Extra lecture Monday 10/5 6:30pm-8pm in A1 Hearst Annex on containers
due Wednesday 10/7
It's long because it covers multiple important topics
Ask questions about your homework after you finish the lab
Come to office hours earlier
Homework Party Wednesday 10/7 7pm-9pm
Quiz 2 released Friday 10/9 is due Monday 10/12
Ants project due Friday 10/16
Midterm 2 on Thursday 10/22 @ 7pm
due Wednesday 10/7
Quiz 2 released Wednesday 10/7 is due Friday 10/9
project is due Thursday 10/1 @ 11:59pm. Earn an extra
credit point for submitting by Wednesday 9/30.
Project party Wednesday 9/30 6pm-9pm in B6 Evans.
are posted.
due Monday 9/28 @ 11:59pm. Students taking the make-up
exam automatically receive full credit.
project is due Thursday 10/1 @ 11:59pm. Earn an extra
credit point for submitting by Wednesday 9/30.
Extra Lecture on Huffman Codes Monday 9/28 6:30pm-8pm in A1 Hearst Annex
(J homework will be assigned for CS 98)
project is posted, due Thursday 10/1 @ 11:59pm
Students interrupted by the VLSB fire alarm will need to take a
2:10pm-3pm
Friday 9/25 in Wheeler Auditorium
due Monday 9/28 @ 11:59pm. Students taking the make-up
exam automatically receive full credit.
Extra Lecture on Huffman Codes Monday 9/28 6:30pm-8pm in A1 Hearst Annex
(J homework will be assigned for CS 98)
due Wednesday 9/23 @ 11:59pm
project is posted, due Thursday 10/1 @ 11:59pm
Students interrupted by the VLSB fire alarm will need to take a
2:10pm-3pm
Friday 9/25 in Wheeler Auditorium
due Monday 9/28 @ 11:59pm. Students taking the make-up
exam automatically receive full credit.
due Tuesday 10/13 @ 11:59pm
due Monday 9/21 @ 11:59pm
due Wednesday 9/23 @ 11:59pm
project is posted, due Thursday 10/1 @ 11:59pm
Guest lecturer on Monday 9/21 (Sumukh Sridhara)
Extra lecture on lambda calculus Monday 9/21 6:30pm-8pm in A1
Hearst Annex by Chenyang Yuan
Students interrupted by the VLSB fire alarm will need to take a
make-up exam 2:10pm-3pm Friday 9/25 in Wheeler Auditorium
Lost points on Hog composition can be regained by revising your project.
Instructions will be posted after all composition grading is finished.
One-on-one tutoring is now being offered (see Piazza)
due Monday 9/21 @ 11:59pm
due Wednesday 9/23 @ 11:59pm
Guest lecturers on Friday 9/18 (Brian Hou) and Monday 9/21 (Sumukh Sridhara)
Extra lecture on lambda calculus Monday 9/21 6:30pm-8pm in A1
Hearst Annex by Chenyang Yuan
Lost points on Hog composition can be regained by revising your project.
Instructions will be posted after all composition grading is finished.
One-on-one tutoring will be offered starting next week.
Information will be posted on Piazza today.
are posted
Students interrupted by the VLSB fire alarm will need to take a
make-up exam next week
due Monday 9/14 @ 11:59pm
on Wednesday 9/16 8pm-10pm
due Monday 9/21 @ 11:59pm
Extra lecture on decision making in games Monday 9/14 6:30pm-8pm in A1
Hearst Annex by Kevin Chen and Cale Horeff
Sign up for
that provide
tutoring in small groups through CS Mentors, starting after Midterm 1
No lecture on Wednesday 9/16; no discussion on Thursday 9/17 or Friday 9/18
Guest lecturers on Friday 9/18 (Brian Hou) and Monday 9/21 (Sumukh Sridhara)
due Monday 9/14 @ 11:59pm
on Wednesday 9/16 8pm-10pm
Review sessions Saturday 9/12 1pm-2:30pm & 2:30pm-4pm in 155 Dwinelle
HKN review session Sunday 9/13 1pm-4pm in 145 Dwinelle
Guerrilla section this Saturday 9/12 5pm-7pm in 271 Soda on Higher-Order Functions
Entries for the completely optional
are due Monday 9/21
Sign up for
that provide
tutoring in small groups through CS Mentors, starting after Midterm 1
due Thursday 9/10 @ 11:59pm
Earn 1 extra credit point for completing it by Wednesday 9/9 @ 11:59pm
Project Party Wednesday 9/9 6pm-8pm in B6 Evans
due Monday 9/14 @ 11:59pm
Midterm 1 on Wednesday 9/16 8pm-10pm
Covers material through Friday 9/11
Review session Saturday 9/12 1pm-4pm in 155 Dwinelle
Info and practice exams posted later this week
Small group tutoring sign-ups start soon
Videos for the first
Quiz 1 due Friday 9/4 @ 11:59pm
0/3: Please talk to a TA for advice on how to proceed
1/3: Make sure to spend time understanding all lab & discussion questions
2/3: Practice is extremely helpful in learning how to solve CS problems
due Thursday 9/10 @ 11:59pm
Earn 1 extra credit point for completing it by Wednesday 9/9 @ 11:59pm
exists for students who don't want guidance
There will be a few extra office hours this weekend if you want help
Midterm 1 on Wednesday 9/16 8pm-10pm
Earn extra P/NP units (1 per class) for learning more:
starts Friday 9/4 5pm-6:30pm in 306 Soda
Additional Topics in SICP starts Monday 9/7 (probably 6:30pm-8pm in A1 Hearst Annex)
Homework 1 due Wednesday 9/2 (graded on effort, but try hard for correctness)
Quiz 1 released Wednesday 9/2 due Friday 9/4 @ 11:59pm (but do it Thursday)
If you score 0/3, you will need to talk to someone on the course staff
Open-computer: You can use the Python interpreter, watch course videos, etc.
Closed-help: Please don't talk to your classmates, search for answers, etc.
due Thursday 9/10 @ 11:59pm
Earn 1 extra credit point for completing it by Wednesday 9/9 @ 11:59pm
exists for students who don't want guidance
Midterm 1 on Wednesday 9/16 8pm-10pm
starts Friday 9/4 5pm-6:30pm in 306 Soda
Additional Topics in SICP starts Monday 9/7 6:30pm-8pm in A1 Hearst Annex
Homework 1 due Wednesday 9/2 (graded on effort, but try hard for correctness)
Homework party on Tuesday 9/1 6pm-8pm in B6 Evans
You can ask questions about homework at the end of your lab section
Quiz 1 released Wednesday 9/2 due Friday 9/4 (graded on correctness)
3 points, similar in format to homework, but graded for correctness
If you score 0/3, you will need to talk to someone on the course staff
Open-computer: You can use the Python interpreter, watch course videos, etc.
Closed-help: Please don't talk to your classmates, search for answers, etc.
Project 1 released this week due Thursday 9/10 @ 11:59pm
Earn 1 extra credit point for completing it by Wednesday 9/9 @ 11:59pm
Midterm 1 on Wednesday 9/16 8pm-10pm
Locations, topics, and review materials will be announced later
No lecture on Wednesday 9/16
No discussion on Thursday 9/17 or Friday 9/18
Attending lab & discussion will provide a midterm safety net
Waitlisted students can attend normal lab sections next week (where/when they are waitlisted)
Starting next week, attending lab & discussion will provide a midterm safety net
Homework 1 due Wednesday 9/2
All homework you must make progress on every problem to receive 2/2
Homework party on Tuesday 9/1 6pm-8pm in B6 Evans
Qiuz 1 released Wednesday 9/2 due Friday 9/4 (graded on correctness)
The office hours schedule is posted:
Environment diagram generator:
There is no lab this Wednesday 8/26!
Due to limited space in Wheeler Auditorium, Lectures 1 and 2 will be repeated multiple times in advance to accommodate all of the students. These lectures have same content as the normal lecture on Wednesday and Friday, respectively, but will be less crowded.
Lecture 1 will be given a day early on Tuesday, 8/25, at 3pm and again at 4pm in Wheeler Auditorium.
Lecture 2 will be given a day early on Thursday, 8/27, at 7pm in 155 Dwinelle.
Welcome to CS 61A! This site is still under construction.
Resource/Piazza Search
Search for terms like "recursion", "homework 3", or "practice"
Lecture 1: Functions
() () () () ()
Lecture 2: Names
() () () () ()
Lecture 3: Control
() () () () ()
Lecture 4: Higher-Order Functions
() () () () ()
Lecture 5: Environments
() () () () ()
Lecture 6: Recursion
() () () () ()
Lecture 7: Tree Recursion
() () () () ()
Lecture 8: Function Examples
() () () ()
Lecture 9: Data Abstraction
() () () () ()
Lecture 10: Sequences
() () () () ()
Lecture 11: Trees
() () () () ()
Lecture 12: Mutable Values
() () () () ()
Lecture 13: Mutable Functions
() () () () ()
Lecture 14: Objects
() () () () ()
Lecture 15: Inheritance
() () () () ()
Lecture 16: Representation
() () () () ()
Lecture 17: Composition
() () () () ()
Lecture 18: Hierarchy
() () () () ()
Lecture 19: Growth
() () () () ()
Lecture 20: Sets
() () () () ()
Lecture 21: Data Examples
() () () () ()
Lecture 22: Users
Lecture 23: Scheme
() () () () ()
Lecture 24: Exceptions
() () () () ()
Lecture 25: Calculator
() () () () ()
Lecture 26: Interpreters
() () () ()
Lecture 27: Tail Calls
() () () () ()
Lecture 28: Iterators
() () () () ()
Lecture 29: Streams
() () () () ()
Lecture 30: Declarative Programming
() () () () ()
Lecture 31: Tables
() () () () ()
Lecture 32: Recursive Select
() () () () ()
Lecture 33: Aggregation
() () () () ()
Lecture 34: Distributed Computing
() () () ()
Lecture 35: Distributed Data
() () () () ()
Lecture 36: Conclusion
Lecture 37: Natural Language
() () () () ()
Lecture 1: Newton's Method
() () () ()
ExtraLecture
Lecture 2: Decisions
() (1pps) (8pp) ()
ExtraLecture
Lecture 3: Lambda
() (1pps) (8pp) (e03.py)
ExtraLecture
Lecture 4: Huffman
() () () (e04.py)
ExtraLecture
Lecture 5: Containers
() () () ()
ExtraLecture
Lecture 6: OOP
() () () (e06.py)
ExtraLecture
Lecture 7: Parallelism
() () () ()
ExtraLecture
Lecture 8: Macros
() () () ()
ExtraLecture
Lecture 9: Ray Tracing
() () () ()
ExtraLecture
Lecture 10: Lazy Evaluation
() () () ()
ExtraLecture
Lecture 11: Logic Programming
() () () ()
ExtraLecture
Lecture 12: Computability
() () () ()
ExtraLecture
Lecture 13: Machine Learning
() () () ()
ExtraLecture
ExtraHomework
SpecialHomework
SpecialHomework
SpecialHomework
Discussion
Discussion
Discussion
Discussion
Discussion
Discussion
Discussion
Discussion
Discussion
Discussion
Discussion
Discussion
Functions and expressions practice problems
Control structures practice problems
Higher Order Functions practice problems
Lambda expressions practice problems
Recursion practice problems
() () () () ()
(due Thu 9/3)
() () () () ()
(due Wed 9/2)
() () () () ()
(due Thu 9/10)
Higher-Order Functions
() () () () ()
(due Thu 9/3)
(due Fri 9/4) ()
Environments
() () () () ()
No Lecture: Labor Day
() () () () ()
(due Thu 9/10)
(due Mon 9/14)
(due Mon 9/21)
Tree Recursion
() () () () ()
Function Examples
() () () ()
(due Thu 9/17)
Data Abstraction
() () () () ()
(due Wed 9/23)
() () () () ()
(due Thu 10/1)
() () () () ()
(due Thu 9/24)
(due Mon 9/28)
Mutable Values
() () () () ()
Mutable Functions
() () () () ()
(due Thu 10/1)
() () () () ()
(due Wed 10/7)
Inheritance
() () () () ()
(due Fri 10/16)
Representation
() () () () ()
(due Thu 10/8)
Composition
() () () () ()
(due Mon 10/12) ()
() () () () ()
() () () () ()
(due Thu 10/15)
(due Mon 10/19)
() () () () ()
Data Examples
() () () () ()
(due Thu 10/22)
() () () () ()
(due Thu 10/29)
Exceptions
() () () () ()
(due Thu 10/29)
Calculator
() () () () ()
(due Wed 11/4)
Interpreters
() () () ()
(due Thu 11/19)
Tail Calls
() () () () ()
(due Thu 11/5)
(due Fri 11/6) ()
() () () () ()
() () () () ()
No Lecture: Veterans Day
(due Thu 11/12)
Declarative Programming
() () () () ()
() () () () ()
Recursive Select
() () () () ()
(due Thu 11/19)
Aggregation
() () () () ()
(due Wed 11/25)
Distributed Computing
() () () ()
No Lecture: Thanksgiving
(due Thu 12/10)
No Lecture: Thanksgiving
Distributed Data
() () () () ()
(due Thu 12/3)
Conclusion
(due Thu 12/3)
(due Thu 12/3) ()
Natural Language
() () () () ()
(due Thu 12/10)
(due Thu 12/10)