Harvey Mudd College

Computer Science 60
Principles of Computer Science
Fall 2002

Syllabus and Lecture Slide Links


Note: When you click on a link, a .htm page will usually come up by default. If you want .pdf instead, edit the URL, replacing .htm with either .1.pdf for  full-size, .2.pdf for two slides per page, or .6.pdf for six slides per page.

Date

Topic

9/4/02

Introduction, Data Representation, Binary Relations

9/9/02

High-Level Functional Programming, Problem Decomposition

9/11/02

Low-Level Functional Programming, Recursion, Pattern Matching

9/16/02

Trees

9/18/02

Open lists in Java

9/23/02

Interfaces, Higher-Order Functions in Java

9/25/02

Exceptions, Copying and Equality,

9/30/02

Closed Lists

10/2/02

Imperative vs. Functional Programming

10/7/02

Inheritance and Inner Classes

10/9/02

Searching Trees and Graphs

10/14/02

Graphics, Threads

10/16/02

Midterm Exam

10/21/02

Fall Break

10/23/02

Languages, Grammars, Parsing

10/28/02

Languages, Grammars, Parsing

10/30/02

Turing Machines

11/4/02

Proposition logic, Logic synthesis

11/6/02

Logic simplification, Encoding, Hardware components

11/11/02

Logic simplification, Encoding, Hardware components

11/13/02

Predicate logic, Prolog and databases

11/18/02

Predicate logic, Prolog and databases

11/20/02

Predicate logic, Prolog and databases

11/25/02

Program correctness

11/27/02

Thanksgiving Break

12/2/02

Complexity, Algorithm design

12/4/02

Complexity, Algorithm design

12/9/02

Computer architecture, Assembly language

12/11/02

Finite-state machines, Regular expressions, Finite-state machine implementation

12/18/02

Section 1, 2, 3 Final: Wed, 2 p.m.

12/19/02

Section 4, 5, 6 Final: Thur. 7 p.m.