CS 421: Programming Languages and Compilers
Lecture Schedule for Spring 2011
(Previous semesters' lectures at bottom of page.)
Schedule subject to change as course progresses.
Lecture topics (in italics) for not yet given lectures are preliminary, and may change.
Class Date Topic Lecture slides (pdf) Addition readings
11/18Introduction to courselecture1-2up (annotated)
21/20OCaml: Tuples and listslecture2-2up (annotated) (supplementary notes)
31/25OCaml: Datatypes and treelecture3-2up
41/27Language design and implementation overviewlecture4-2up (supplementary notes)(annotated)
52/1Compilers; lexical analysislecture5-2up (annotated)wikipedia,something from Stanford
62/3Lexical analysis; ocamllexlecture6-2up (annotated)ocammlex manual,tutorial
72/8Context-free grammars; top-down parsinglecture7-2up (annotated)notes from Stanford
82/10Top-down parsinglecture8-2up (annotated) (supplementary notes)
92/15Bottom-up parsing; ocamlyacclecture9-2up (annotated)
102/17LR parsing conflictslecture10-2up (annotated) (supp notes + zip file) (optional supp notes)
112/22Compilation of static languageslecture11-2up (annotated)
2/22Evening: review session in 1320 DCL
2/24Midterm 1
123/1Compilation (cont.)lecture12-2up
133/3Compilation (cont.)lecture12-13ann
143/8History of programming languageslecture14-2up (annotated)
153/10Clecture15ann
163/15Dynamically-typed languageslecture16-2up (annotated)
173/17Automatic memory managementlecture17-2up (annotated)
3/22Spring break
3/24Spring break
183/29Object-oriented languages; Javalecture18-2up (annotated)
193/31Object-oriented languages; C++lecture19-2up (annotated)
204/5Functional programming; higher-order functionslecture20-2up (part 1 annotated)
214/7(cont.)part 2 annotated
224/12(cont.)part 3 annotated
4/14Midterm exam 2
234/19Lambda calculus; Haskelllecture23-2up (annotated)
244/21Lambda calculus (cont.); OCaml type-checkinglecture24-25-2up (annotated) (supplementary notes)
254/26(cont.)part 2 annotated
264/28Hoare logiclecture26-2up (annotated)
275/3Review for finallecture27 annotated
5/6, 1:30-4:30pmFinal exam
 
Lectures from Spring 2008
Lectures from Summer 2008
Lectures from Fall 2008
Lectures from Spring 2009
Lectures from Summer 2009
Lectures from Fall 2009
Lectures from Spring 2010
Lectures from Summer 2010
Lectures from Fall 2010