home button

COP 4020/6021, Spring 2019
Programming Languages

Announcements

Final grades are posted in Canvas.

Course materials

4020 Syllabus       6021 Syllabus

Introductory tutorials on ML

Assignment I, handed out on 1/9 and due on 1/21

Introductory tutorial on ML functions

Introductory tutorial on ML datatypes

Assignment II, handed out on 1/23 and due on 2/4

Assignment III, handed out on 2/4 and due on 2/25

Test I

Assignment IV, handed out on 2/25 and due on 3/18

Assignment V, handed out on 3/18 and due on 4/8

Test II

Assignment VI, handed out on 4/10 and due on 4/24 (extended from 4/22)

Test III

Grades

Please use Canvas to check your grades.

Schedule (filled in as the semester progresses)

Week Dates Topics Reading (ML book)
1 01/07, 01/09 Introduction; ML basics; Polymorphism 1-3.1, 5.3
2 01/14, 01/16 Functions; Patterns 3.2-3.6.3, 4.1-4.2, 5.1, 5.4
3           01/23 Functions 5.5-5.6
4 01/28, 01/30 Datatypes; Deductive systems 6.1-6.3
5 02/04, 02/06 Deductive systems Class notes
6 02/11, 02/13 Test I Class notes
7 02/18, 02/20 Syntax; Dynamic semantics Class notes
8 02/25, 02/27 Dynamic semantics; Lambda calculus Class notes
9 03/04, 03/06 Lambda calculus; Static semantics Class notes
10 03/18, 03/20 Type safety Class notes
11 03/25, 03/27 Test II Class notes
12 04/01, 04/03 Type safety; Algebraic data types Class notes
13 04/08, 04/10 Recursive types; Side effects 5.2, 7.2-7.3
14 04/15, 04/17 Side effects Class notes
15 04/22, 04/24 Side effects Class notes
Final 04/29 Test III (Final Exam), 3-5pm All tests are cumulative