Comp 210 Lectures

Spring 2003


Notice

These are, in general, the notes from which I lecture. They are, at best, only fairly complete. They certainly are not a substitute for attending class, taking notes, attending lab lecture, and reading the book. Their only purpose here is to help remind you of what was covered in class.

TAKE COMPLETE AND ACCURATE NOTES!!

The material in these notes may not correspond exactly to what was discussed in class due to the nature of class discussions, modified examples, and time constraints. You are responsible for all material whether presented in class or on the web pages.

Lesson #

Date

Subject

1
Mon. 1/13/03
Welcome! Administrivia, computing, simple programs
2
Wed. 1/15/03
Expressions and functions in Scheme, contracts
3
Fri. 1/17/03
Hand evaluation, design recipe, conditionals/booleans, conditional evaluation
 
Mon 1/20/03
MLK Holiday -- no classes!
4
Wed. 1/22/03
More design recipe work, symbols and structures
5
Fri. 1/24/03
More structures, templates, abstract data, revised design recipe
6
Mon. 1/27/03
Compound data structures, abstraction/encapsulation, inheritance/composition
7
Wed. 1/29/03
Functions on compound data structures, intro to lists
8
Fri. 1/31/03
Recursion, examples of functions on lists
9
Mon. 2/3/03
Recursive construction of lists, Law of Scheme, lists of mixed data
10
Wed. 2/5/03
Mixed data cont., Natural numbers
11
Fri. 2/7/03
accumulator algorithms
12
Mon. 2/10/03
Review
13
Wed. 2/12/03
Exam #1 -- in class
14
Fri. 2/14/03
Review of templates for structures, Family Trees
15
Mon. 2/17/03
Family Trees cont., Functions of Two Non-Trivial Arguments, Process Flow Analysis
16
Wed. 2/19/03
Mutual Recursion: Descendent Trees, more Process Flow
17
Fri. 2/21/03
More mutual recursion: Whole-part hierarchies
18
Mon. 2/24/03
Locals
19
Wed. 2/26/03
More local, closures, functions as objects
20
Fri. 2/28/03
More closures, lambda functions, higher order functions
21
Mon. 3/3/03
Mapping, folding & visiting
22
Wed. 3/5/03
Visitors cont.
23
Fri. 3/7/03
Review
 
3/10/03-3/14/03
MIDTERM RECESS!!!
24
Mon. 3/17/03
Review -- Exam 2: Time-limited take-home, due by Monday.
25
Wed. 3/19/03
Generative recursion: Divide-and-conquer -- Sorting
26
Fri. 3/21/03
Generative recursion: Sierpinski gaskets
27
Mon. 3/24/03
Sierpinski gaskets continued.
28
Wed. 3/26/03
Sierpinski gaskets continued, incl. functional-style drawing of fractals
29
Fri. 3/28/03
Depth and Breadth-first traversals
30
Mon. 3/31/03
set-[struct]-[field]! and mutable data
31
Wed. 4/2/03
Mutable data continued, graphs, depth-first traversal
32
Fri. 4/4/03
set!, using locals, factories and closures to control mutation
33
Mon. 4/7/03
breadth-first traversal; why to use set!
34
Wed. 4/9/03
Restricted Access Containers
35
Fri. 4/11/03
RACs and tree traversals
36
Mon. 4/14/03
State Design Pattern
37
Wed 4/16/03
Mutable lists: LRStruct
38
Fri. 4/18/03
Review
39
Mon. 4/21/03
Review. Take-home Exam 3
40
Wed. 4/23/03
Strategy Designs, GUIs in Scheme
41
Fri. 4/25/03
Last day of classes!! Exam 3 due, Exam 3 solution discussion
To infinity...and beyond! (representing infinite lists -- lazy evaluation)

 

You can also look at the lecture notes from last fall or even earlier.