| Date | Assignment | Reading | Subject |
|---|---|---|---|
| Sep 01 | Introduction; languages & paradigms; history | ||
| Sep 06 | Grammar rules; HtDP2e chap. 1 | Scheme/Racket: history & philosophy; typed data; defining variables & functions; conditionals | |
| Sep 08 | HtDP2e chap. 2 | Scheme/Racket: type-checking, structures | |
| Sep 13 | HW1 | on-line help | predefined structures |
| Sep 13 | Last day to add classes | ||
| Sep 15 | choose language to present | practice working with predefined structures | |
| Sep 20 | HW1 due | PLAI chaps. 0-3 | define-struct, contracts, define-type, type-case |
| Sep 22 | HW2; Project 1 | PP chaps. 22-25 | Scheme/Racket: lists, trees, naturals and recursion |
| Sep 27 | PP chaps. 27-28 | Scheme/Racket: Local definitions, closures, higher-order functions | |
| Sep 28 | Last day to drop classes | ||
| Sep 29 | PP chaps. 29-31 | Scheme/Racket: I/O, sequence, and mutation | |
| Oct 04 | HW2 due | PLAI chaps. 4-5 | Implementing functions |
| Oct 06 | Progress report on presentation; Project 1 due; HW3 |
Discuss projects & presentations; Ruby: history & philosophy |
|
| Oct 11 | HW4; Project 2 | Ruby in 20
Minutes; Ruby Learning Tutorial |
Ruby: defining functions; basic data types (numbers, strings, arrays, hashes) |
| Oct 13 | HW3 due | Ruby: I/O, conditionals, defining methods | |
| Oct 18 |
Ruby
from Other Languages; Ruby from Java |
Ruby: iterators (map, select, reject, each) | |
| Oct 20 | HW4 due | Ruby: defining classes and methods | |
| Oct 25 | HW5 | Ruby: classes and methods; writing higher-order functions | |
| Oct 27 | Ruby: TBA | ||
| Nov 01 | PLAI chap. 6 | Implementing first-class functions | |
| Nov 02 | Last day to withdraw from classes | ||
| Nov 03 | AiP chaps. 1-3 | Prolog: history & philosophy; variables & predicates | |
| Nov 08 | Project 2 and HW5 due; HW6 | AiP chaps. 4-5 | Prolog: defining new rules |
| Nov 10 | AiP chaps. 6-8 | Prolog: arithmetic, the rulebase, and recursion | |
| Nov 15 | AiP chaps. 9-10 | Prolog: structures and unification | |
| Nov 17 | HW6 due; HW7 | AiP chaps. 11-13 | Prolog: lists, operators, and cut |
| Nov 22 | AiP chaps. 14-15 | Prolog: control structures and NLP | |
| Nov 24 | Thanksgiving; no classes | ||
| Nov 29 | In-class presentations | ||
| Dec 01 | In-class presentations | ||
| Dec 06 | In-class presentations | ||
| Dec 08 | Project 3 and ALL homework due | Catch up and review | |
| Dec 13 | Make-up day (in case of missed classes) | ||
| Dec 15 | 270 final exam, 10:30-12:30 | ||