## Course Description

## Resources

- TA Office Hours: F 10—12 in Phelps 3518.
- Professor's Office Hours: Immediately following lecture.
- The CS 162 Google Group.
- Resources on Scala.
- Prolog examples: family.pl, digit.pl, parity.pl, graph.pl.
- CLP examples: clp-age.pl, clp-digit.pl, clp-parity.pl.

- Handout 1: First-order logic
- Handout 2: Lambda calculus
- Handout 3: Simply-typed lambda calculus
- Handout 4: Simply-typed FUN
- Handout 5: Polymorphically-typed FUN
- Handout 6: Logic programming
- Handout 7: Mini-Prolog
- Handout 8: Constraint logic programming
- Handout 9: Mini-Prolog with finite domains
- Handout 10: Finite domains constraint solver

## 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.