CS 105 Schedule

September 2022
SundayMondayTuesdayWednesdayThursdayFridaySaturday
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

Recitation: Data-driven, rule-driven programming process

10
11
12

Operational semantics; metatheory

Read:

  • Ramsey, Chapter 1, Section 1.5 (Operational Semantics)

  • Ramsey, Chapter 1, Section 1.7 (Operational Semantics Revisited)

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.

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
SundayMondayTuesdayWednesdayThursdayFridaySaturday
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
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

Recitation: Programming Typed uScheme or regression testing of type checker

4

Recitation: Programming Typed uScheme or regression testing of type checker

5

November 2022
SundayMondayTuesdayWednesdayThursdayFridaySaturday
30
31

ML type inference

Topic: Type inference

1
2

ML type inference

Topic: Type inference

3

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
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

December 2022
SundayMondayTuesdayWednesdayThursdayFridaySaturday
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