Course Description

This course is about understanding fundamental concepts in programming languages and learning different models of programming and computation.

Resources

Assignments

Assignment Grades

We have planned 8 assignments for the quarter. When computing the final course grade for each person, that person's lowest-graded assignment will be dropped and the remaining assignment grades will be averaged to get the final grade, with each assignment weighted evenly.

Assignment Late Policy

Each person has 3 "slip days" that they can use over the course of the quarter to delay turnin of an assignment. Slip days can only be used in increments of 24 hours—30 minutes late is the same as 23 hours late. Slip days will be applied automatically by the TA based on when an assignment is turned in.

Academic Honesty

Each person is responsible for their own work, and is expected to complete the assignment without collaborating with anyone else. High-level discussion of the concepts without anything specific to an assignment is OK; talking specifically about the solution to an assignment or sharing code is not OK. Violation of this policy can lead to an F on the assignment or, in extreme cases, an F for the entire course. When in doubt, refer questions to the professor or TA.