COMP 50 Schedule

Note: This schedule is subject to change without notice at any time. Expect it to change approximately weekly throughout the semester. For pointers to lecture notes, and for more information about what's going on, consult the syllabus.

Wednesday, 9/4
A data-centered discipline of information; the idea of an algorithm; live coding
Monday, 9/9
Homework review: the frequency meter, decibans
Assignment for overture: Introduction (also in PDF) due at 1:30 PM.
Wednesday, 9/11
The design process and "learning capacity hours"
Monday, 9/16
Variants (definition by choices); How to design Universe programs: the traffic light
Assignment for cond: Simple computations and conditionals (also in PDF) due at 11:59 PM.
Wednesday, 9/18
Homework retrospective: the checker, Robby's Game, and the Presidents' Game. Structures (definition by parts). Domain knowledge: Quick summary of spherical geometry
Monday, 9/23
Understanding big-bang; structure predicates and variant data
Assignment for structures-i: Compound data (also in PDF) due at 11:59 PM.
Wednesday, 9/25
Elements of computational problem-solving
Monday, 9/30
The power and structure of doubling
Assignment for structures-ii: Mixed data (also in PDF) due at 11:59 PM.
Wednesday, 10/2
More about trees
Monday, 10/7
More railway functions; The Essential and the Incidental
Assignment for trees: Unbounded data (also in PDF) due at 11:59 PM.
Wednesday, 10/9
Functions of multiple lists
Monday, 10/14
Columbus Day. No class.
Tuesday, 10/15
Lisp and S-expressions
Assignment for multiple-lists: When a function takes multiple lists (also in PDF) due at 11:59 PM.
Wednesday, 10/16
XML and X-expressions
Monday, 10/21
Using tables of examples to fill in a template
Assignment for mutual-reference: Data with mutual references (also in PDF) due at 11:59 PM.
Wednesday, 10/23
Repetition considered harmful; local variables and functions
Read: First edition, Sections 19 and 20
Monday, 10/28
Functions as arguments
Assignment for templates: Templates and tables of examples (also in PDF) due at 11:59 PM.
Wednesday, 10/30
List search; abstracting list search; other list functions
Read: First edition, Sections 21 and 22
Monday, 11/4
Standard higher-order functions: image overlays, string processing, other applications
Wednesday, 11/6
More loopy functions, anonymous functions, foldl and foldr
Assignment for abstract: Abstraction (also in PDF) due at 11:59 PM.
Monday, 11/11
Veterans' Day. No class.
Wednesday, 11/13
generalizing from "structure" to "problem"; reading CSV files; size of Fibonacci spirals
Monday, 11/18
More generative recursion: building 2D trees
Assignment for loops: List processing with operations as arguments (also in PDF) due at 11:59 PM.

You have met with a TA to plan your learning portfolio.

Wednesday, 11/20
Solving the 2D-tree problem using generative recursion; a taste of probability
Monday, 11/25
In the laboratory! Files are just lists of lines; lines can be lists of fields; the world has many computers; the joys of provide.
Tuesday, 11/26
Not a class day, but Assignment for trigrams: Natural-language recognition (also in PDF) due at 11:59 PM.you have booked a slot to review your portfolio with a graduate writing consultant
Wednesday, 11/27
Thanksgiving. No class.
Monday, 12/2
Solving problems by cutting them in half: 2D-tree, tree balance, sorting
Wednesday, 12/4
Unhappiness: technological impediments to learning and problem-solving
Friday, 12/6
Not a class day, but you have reviewed the final draft of your portfolio with a graduate writing consultant.
Monday, 12/9
Happiness: How your problem-solving skills will manifest in other settings
Tuesday, 12/10
Not a class day, but Assignment for portfolio: The learning portfolio (also in PDF) due at 11:59 PM.