Course Home | Course Policies | Assignments | Schedule & Lecture Notes

CS 3200: Programming Languages
Spring 2020


Here is this semester's tentative schedule; we will update it as the semester progresses.

Please note that lecture notes are provided as a supplement, and are NOT a substitute for attending lecture. In particular, these are not guaranteed, so expect technical difficulties to prevent them from being posted at least a few times in the semester; they also will not contain exercises whose solutions are worked out on the board in class. Please plan accordingly to either take notes or get them from a friend if necessary.

Monads in pictures
Date Topic Reading Lecture Notes Supplemental Examples
Monday, Jan. 13 Syllabus
Overview
Chapter 1 of textbook Slides
Wednesday, Jan. 15 Compilation Chapter 1 of textbook Slides
Wednesday, Jan. 22 Scanning and DFAs Chapter 2 of textbook Slides
Friday, Jan. 24 NFAs Chapter 2 of textbook Slides
Monday, Jan. 27 NFAs and regular expression recap Chapter 2 of textbook Slides
Wednesday, Jan. 29 Flex Flex tutorial
Flex manual
Flex book
Slides countcharandline.lex
abcdexample.lex
getusername.lex
zapme.lex
countwords.lex
Friday, Jan 31 to Monday, Feb. 10 LL and LR parsing with sub Chapter 2 of textbook
handouts from class
Compilers (aka the dragon book)
Wednesday, Feb. 12 Parsing wrapup Chapter 2 of textbook Slides
Friday, Feb. 14 Scope and Binding Chapter 3 of textbook Slides
Monday, Feb. 17 Scope and Binding (cont) Chapter 3 of textbook Slides
Wednesday, Feb. 19 Control Flow Chapter 6 of textbook Slides
Friday, Feb. 21 Control Flow (cont) Chapter 6 of textbook Slides
Monday, Feb. 24 Variables and Types Chapters 7-8 of textbook Slides
Wednesday, Feb. 26 Variables and Types Chapters 7-8 of textbook Slides
Monday, March 2 Review session
Wednesday, March 4 Midterm
Friday, March 6 Subroutines Chapters 9 Slides
Friday, March 27 Running Haskell, plus Ch1 and Ch2 questions Zoom recording
Friday, April 3 Ch 4 questions Zoom recroding
Monday, April 6 Chapter 5-6 questions/overview Zoom recording
Wednesday, April 15 Chapter 6-7 questions/overview Zoom recording (Access Password: y1?0g4Z9)
Friday, April 17 Chapter 8 questions/overview Zoom recording (password u6^&11==)
Monday, April 20 Chapter 8 and 9 Zoom recording (password 3p=$8d!n)
Friday, April 24 IO and functors again Powerpoint slides
Zoom recording (Password: 5l@9+Ers)
Monday, April 27 More functors Zoom recording (Password: 2h&.x+%$)
Friday, May 1 Monads and Applicative Slides
Zoom recording (Password: 5u*s6aSZ)
Monday, May 4 History of programming languages Slides
Zoom recording (Password: 0J*OS876)