...
| Day | Date(2009) | Topic | Reading | Lectures | Problems | Due(2009) | Lab | Supplements | ||||||||||||
1 | Mon | Jan 11 | Introduction |
| W Jan 13 | ||||||||||||||||
2 | Wed | Jan 13 | Scheme primitives; function and data definitions | W Jan 20 |
|
| |||||||||||||||
3 | Fri | Jan 15 | Inductive data, conditionals, and the design recipe |
|
|
|
| ||||||||||||||
– | Mon | Jan 18 | School Holiday |
|
|
|
|
|
| ||||||||||||
4 | Wed | Jan 20 | Data-directed design I |
|
|
| |||||||||||||||
5 | Fri | Jan 22 | Data-directed design II | HW 2 (Solution to 12.4.2 (https:wikiriceedudisplayCSWIKI2111242solss)) | Th Jan 22 |
|
| ||||||||||||||
6 | Mon | Jan 25 | Mutually Referential Data Definitions |
|
|
| |||||||||||||||
7 | Wed | Jan 27 | Local definitions and Lexical Scope | Mon Feb 2 |
|
| |||||||||||||||
8 | Fri | Jan 29 | Functional Abstraction and Polymorphism |
|
|
|
| ||||||||||||||
9 | Mon | Feb 01 | Functions as Values |
|
|
| |||||||||||||||
10 | Wed | Feb 03 | Lambda the Ultimate |
|
|
|
| ||||||||||||||
11 | Fri | Feb 05 | Generative Recursion | Mon Feb 9 |
|
| |||||||||||||||
12 | Mon | Feb 08 | Generative Recursion Illustrated |
|
|
| |||||||||||||||
13 | Wed | Feb 10 | Complexity and Accumulators |
|
|
|
| ||||||||||||||
14 | Fri | Feb 12 | Accumulators and Tail Calls |
|
|
|
| ||||||||||||||
15 | Mon | Feb 15 | Review and First-Class Functions | Review prior readings | Mon Feb 16 | ||||||||||||||||
16 | Wed | Feb 17 | Powerful Functionals | Review prior readings |
|
|
|
| |||||||||||||
17 | Fri | Feb 19 | Exam Review | Review prior readings | Take-home exam |
|
| ||||||||||||||
18 | Mon | Feb 22 | On to Java | OO Design Notes Ch 1.1-1.4.1 | Mon Feb 23 | parse/unparse (https:wikiriceedudisplayCSWIKI211parsess) | |||||||||||||||
19 | Wed | Feb 24 | Java Design Recipe | OO Design Notes Ch 1.1-1.4 |
|
|
|
| |||||||||||||
20 | Fri | Feb 26 | Defining Inductive Data in Java | OO Design Notes Ch 1.5 |
|
| IntList (https:wikiriceedudisplayCSWIKI211IntListdj0) IntListTest (https:wikiriceedudisplayCSWIKI211IntListTestdj0) | ||||||||||||||
21 | Mon | Mar 01 08 | Static Class Members and the Singleton Pattern | OO Design Notes Ch 1.6 |
|
| ObjectList (https:wikiriceedudisplayCSWIKI211ObjectListdj1) ObjectListTest (https:wikiriceedudisplayCSWIKI211ObjectListTestdj1) | ||||||||||||||
22 | Wed | Mar 03 10 | Polymorphism and Interfaces | OO Design Notes Ch 1.8 |
|
|
| ComparableList (https:wikiriceedudisplayCSWIKI211ComparableListdj1) ComparableListTest (https:wikiriceedudisplayCSWIKI211ComparableListTestdj1) | |||||||||||||
23 | Fri | Mar 05 12 | Loose Ends and First-class Functions | OO Design Notes Ch 1.9-1.10, 1.12 | Fri Mar 13 |
|
| ||||||||||||||
24 | Mon | Mar 08 15 | The Strategy and Visitor Patterns | OO Design Notes Ch 1.9, 1.11 |
|
| IntList.dj1 (https:wikiriceedudisplayCSWIKI211IntListdj1) IntListTest.dj1 (https:wikiriceedudisplayCSWIKI211IntListTestdj1) | ||||||||||||||
25 | Wed | Mar 10 17 | Visitors, Visitors, Vistors ... | OO Design Notes Ch 1.11 |
|
|
|
| |||||||||||||
26 | Fri | Mar 12 19 | Full Java | OO Design Notes Ch 1.13 | Wed Mar 25 |
|
| ||||||||||||||
27 | Mon | Mar 15 22 | Visibility, Type-Checking, and Generics | OO Design Notes Ch. 1.10, 1.13 |
|
| List.java (https:wikiriceedudisplayCSWIKI211Listjava) ListTest.java (https:wikiriceedudisplayCSWIKI211ListTestjava) | ||||||||||||||
28 | Wed | Mar 17 24 | Generics with Discretion |
|
|
|
|
| |||||||||||||
29 | Fri | Mar 19 26 | Mutation: Succumbing to the Dark Side? | OO Design Notes Ch 1.13 |
|
|
|
| |||||||||||||
30 | Mon | Mar 22 29 | Arrays as Bounded Sequences | OO Design Notes Ch 2.1 |
|
|
| ||||||||||||||
31 | Wed | Mar 24 31 | Mutable Linked Lists | OO Design Notes Ch 2.1 |
|
| BigBiList.java (https:wikiriceedudisplayCSWIKI211BiListjava) BigBiListTest.java (https:wikiriceedudisplayCSWIKI211BiListTestjava) | ||||||||||||||
– | Fri | Apr 2 | School Holiday |
|
|
|
|
|
| ||||||||||||
32 | Fri Mon | Mar 26 Apr 5 | Mutable Trees | OO Design Notes Ch 2.1 |
|
|
| TreeMap.java (https:wikiriceedudisplayCSWIKI211TreeMapjava) TreeMapTest.java (https:wikiriceedudisplayCSWIKI211TreeMapTestjava) | |||||||||||||
33 | Mon Wed | Mar 29 Apr 7 | Designing OO Data Structures |
|
|
| OOTreeMap.java (https:wikiriceedudisplayCSWIKI211OOTreeMapjava) OOTreeMapTest.java (https:wikiriceedudisplayCSWIKI211OOTreeMapTestjava) | ||||||||||||||
34 | Wed Fri | Mar 31 Apr 9 | Efficient Representations of Maps and Sets |
|
|
| |||||||||||||||
– 35 | Fri Mon | Apr 2 | School Holiday |
|
|
|
|
|
| 12 | OO | 35 | Mon | Apr 5 | OO Design Retrospective | OO Design Notes |
|
|
| ||
36 | Wed | Apr 7 14 | Fast Searching Methods I | OO Design Notes |
|
|
|
| |||||||||||||
37 | Fri | Apr 9 16 | Fast Searching Methods II | OO Design Notes |
|
|
|
| |||||||||||||
38 | Mon | Apr 12 19 | Fast Sorting Methods | OO Design Notes |
|
| MyHashMap.java (https:wikiriceedudisplayCSWIKI211MyHashMapjava) MyHashMapTest.java (https:wikiriceedudisplayCSWIKI211MyHashMapTestjava) | ||||||||||||||
39 | Wed | Apr 14 21 | Graphical User Interfaces | OO Design Notes Ch. 3 |
|
|
|
|
| ||||||||||||
40 | Fri | Apr 16 | TBA |
|
|
|
|
|
| ||||||||||||
41 | Mon | Apr 19 | TBA |
|
|
|
|
|
| ||||||||||||
42 | Mon | Apr 21 | TBA |
|
|
|
|
|
| ||||||||||||
23 | Concurrency | 43 | Mon | Apr 23 | TBA |
|
|
|
|
|
|
Code Block |
---|
Exit Survey
...