Programming Languages

Schedule

Lecture Hours: 2:40pm - 3:55pm on Tuesdays and Thursdays
Lecture Location: Science Center L32
Lab Location: Clothier 016

Calendar

The following is a tentative course calendar; it is subject to change as circumstances dictate.

Captured videos of lecture are linked in the calendar below. The corresponding resources created during those lectures can be found in the Lecture Materials.

WEEK DAY ANNOUNCEMENTS TOPIC & READING ASSIGNMENTS
1

Aug 31

 

Introduction to OCaml

Lab 0: OCaml Introduction

Sep 02

 
2

Sep 07

Lecture, Materials

Higher-Order Functions; OCaml Type Inference

Lab 1: Higher-Order Functions and Trees

Sep 09

Lecture, Materials

Drop/add ends (Sep 13)

3

Sep 14

Lecture, Materials

A Brief Introduction to Logic

Lab 2: Proofs and Proof Systems

Sep 16

Lecture, Materials

Syntax and Semantics

  • Sections 2.1 – 2.2
4

Sep 21

Lecture, Materials

Operational Semantics; F♭

  • Sections 2.3.1 – 2.3.3

Lab 3: F♭ Interpreter

Sep 23

Lecture, Materials

5

Sep 28

Lecture, Materials

The Y Combinator

  • Section 2.3.5

Sep 30

Lecture, Materials

Tuples

  • Sections 2.3.4, 3.1
6

Oct 05

Lecture, Materials

Records and Variants

  • Sections 3.2 – 3.3

Lab 4: Operational Semantics I

Oct 07

Lecture, Materials

State

  • Sections 4.1 – 4.3
 

Oct 12

Fall Break

Oct 14

7

Oct 19

Lecture, Materials

Exceptions

  • Sections 4.4, 5.1

Lab 5: Operational Semantics II

Oct 21

Lecture, Materials

Object-Oriented Semantics

  • Chapter 5
8

Oct 26

Lecture, Materials

Types and Typechecking

  • Sections 6.1 – 6.4

Lab 6: Type Systems I

Oct 28

Lecture, Materials

9

Nov 02

Lecture, Materials

Subtypes

  • Section 6.5

Lab 7: Type Systems II

Nov 04

Lecture, Materials

CR/NC/W Deadline (Nov 05)

Type Inference

  • Section 6.6
10

Nov 09

Lecture, Materials

Lab 8: EF♭ Type Inferencer

Nov 11

Lecture, Materials

Operational Equivalence

  • Section 2.4
11

Nov 16

Lecture, Materials

Proofs of Proof Systems

Nov 18

Lecture, Materials

12

Nov 23

Lecture, Materials

Theory and Practice

Nov 25

Thanksgiving Break

13

Nov 30

Lecture, Materials

TF♭ Soundness

Lab 9: Proof System Proofs

Dec 02

Old Lecture Video, Materials

14

Dec 07

Lecture, Materials

Lecture, Materials (Dec 10)

Review Session

 

Dec 14

Final Exam (7pm-10pm, SCI 128)