CS 105: | Modules | Calendar | Office Hours |
Syllabus | ML | Coding Style |
Coding Rubric |
---|
September 2022 | ||||||
---|---|---|---|---|---|---|
Sunday | Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
28 |
29 |
30 |
31 |
1 |
2 |
3 |
4 |
5 |
6 Scan the syllabus Get the textbook Programming Languages: Build, Prove, and Compare, from Donna Cirelli Consider ordering the Ullman book in time for early October |
7 Introduction; proof systems and algebraic laws Read:
Topic: Programming with proof systems and laws |
8 Recitation: Data-driven, rule-driven programming process |
9 Read about the experiences of successful students, and read the tips for CS 105 students Recitation: Data-driven, rule-driven programming process |
10 |
11 |
12 Operational semantics; metatheory Read:
Topic: Operational semantics |
13
|
14 Operational semantics; metatheory Topic: Operational semantics |
15 Recitation: Derivation trees, semantic rules, preview of metatheory |
16 Grading party for impcore. Get the take-home handout on metatheory Recitation: Derivation trees, semantic rules, preview of metatheory |
17 |
18 |
19 Operational semantics; metatheory Topic: Operational semantics |
20
|
21 Scheme I: Recursive programming with lists Read Selected parts of Ramsey, Chapter 2, as described in the comprehension quesions Topic: Scheme |
22 Recitation: Scheme list functions, calculational proofs, functions with accumulating parameters |
23 Grading party for opsem. Recitation: Scheme list functions, calculational proofs, functions with accumulating parameters |
24 |
25 |
26 Scheme II: first-class and higher-order functions Read Selected parts of Ramsey, Chapter 2, as described in the homework. Topic: Higher-order functions |
27
|
28 Scheme II: first-class and higher-order functions Topic: Higher-order functions |
29 Recitation: Higher-order functions on lists, abstracting over comparison functions |
30 Grading party for scheme. Recitation: Higher-order functions on lists, abstracting over comparison functions |
1 |
October 2022 → |
October 2022 | ||||||
---|---|---|---|---|---|---|
Sunday | Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
25 |
26 Scheme II: first-class and higher-order functions Read Selected parts of Ramsey, Chapter 2, as described in the homework. Topic: Higher-order functions |
27
|
28 Scheme II: first-class and higher-order functions Topic: Higher-order functions |
29 Recitation: Higher-order functions on lists, abstracting over comparison functions |
30 Grading party for scheme. Recitation: Higher-order functions on lists, abstracting over comparison functions |
1 |
2 |
3 Scheme III: continuation passing, semantics Topic: Continuations |
4
|
5 Scheme III: continuation passing, semantics Topic: Continuations |
6 Recitation: Searching with success and failure continuations |
7 Grading party for hofs. Recitation: Searching with success and failure continuations |
8 |
9 |
10 No class: Indigenous Peoples' Day |
11
|
12 Introduction to ML Read The guide Learning Standard ML Topic: ML |
13 No recitations this week |
14 Grading party for continuations. No recitations this week |
15 |
16 |
17 Introduction to ML Topic: ML |
18 |
19 Type systems Topic: Type systems |
20 Recitation: Patterns and types in Standard ML |
21 Recitation: Patterns and types in Standard ML |
22 |
23 |
24 Type systems Topic: Type systems Any day this week: If you haven't already, visit the instructor's office hours for five minutes (deadline is October 31). |
25 Homework for Introduction to ML is due. |
26 Type systems Topic: Type systems |
27 Recitation: Type rules and type checking |
28 Grading party for ml. Recitation: Type rules and type checking |
29 |
30 |
31 ML type inference Topic: Type inference |
1 |
2 ML type inference Topic: Type inference |
3 Homework for Type systems is due. Recitation: Programming Typed uScheme or regression testing of type checker |
4 Recitation: Programming Typed uScheme or regression testing of type checker |
5 |
← September 2022November 2022 → |
November 2022 | ||||||
---|---|---|---|---|---|---|
Sunday | Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
30 |
31 ML type inference Topic: Type inference |
1 |
2 ML type inference Topic: Type inference |
3 Homework for Type systems is due. Recitation: Programming Typed uScheme or regression testing of type checker |
4 Recitation: Programming Typed uScheme or regression testing of type checker |
5 |
6 |
7 ML type inference Topic: Type inference |
8 Grading party for typesys. Recitation: Solving conjunction constraints |
9 Modules and abstract types Read:
Topic: Modules |
10 Recitation: Solving conjunction constraints |
11 No recitations (Veterans' Day) (makeup Tuesday) |
12 |
13 |
14 Modules and abstract types Topic: Modules |
15 Homework for ML type inference is due. |
16 Lambda calculus Read:
Topic: Lambda calculus |
17 Recitation: Modules: Abstraction functions, representation invariants |
18 Grading party for ml-inf. Recitation: Modules: Abstraction functions, representation invariants |
19 |
20 |
21 Lambda calculus Topic: Lambda calculus |
22
|
23 No class: Thanksgiving Break |
24 |
25 |
26 |
27 |
28 Smalltalk: Object-oriented programming Read Selected parts of Ramsey, Chapter 10 Topic: Smalltalk |
29 |
30 Smalltalk: Object-oriented programming Topic: Smalltalk |
1 Recitation: Getting started with Smalltalk |
2 Grading party for sml. Recitation: Getting started with Smalltalk |
3 |
← October 2022December 2022 → |
December 2022 | ||||||
---|---|---|---|---|---|---|
Sunday | Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
27 |
28 Smalltalk: Object-oriented programming Read Selected parts of Ramsey, Chapter 10 Topic: Smalltalk |
29 |
30 Smalltalk: Object-oriented programming Topic: Smalltalk |
1 Recitation: Getting started with Smalltalk |
2 Grading party for sml. Recitation: Getting started with Smalltalk |
3 |
4 |
5 Smalltalk: Object-oriented programming Topic: Smalltalk |
6 |
7 Smalltalk: Object-oriented programming Topic: Smalltalk |
8 Recitation: Abstract base classes, double dispatch |
9 Recitation: Abstract base classes, double dispatch |
10 |
11 |
12 Retrospective Topic: my answers to your questions |
13
|
14 |
15 |
16 |
17 Grading party for small. |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
← November 2022 |