CS536-F17 Intro to PLs and Compilers

Room: NOLAND 132
Tue,Th 100-215

Aws Albarghouthi, instructor
aws@cs.wisc.edu
Office hours: Tue, 215-315 pm
Room 6363, Computer Sciences

Hakan Memisoglu, teaching assistant
memisoglu@cs.wisc.edu

Sandhya Srinivas, teaching assistant
ssrinivas4@wisc.edu


TA office hours: Fri 1100-1200 in CS 4310
This website will host slides, notes, and assignments. All assignments will be submitted through Canvas.

Course description

Introduction to the theory and practice of compiler design. Comparison of features of several programming languages and their implications for implementation techniques. Several programming projects required.
Prereq: CS 367 and either CS 354 or 552.

Course info | Assignments | Resources | Canvas | Piazza (ask questions here)

Textbook and Notes:

Lectures

Note: Dates for topics, particularly for the second half of the course, should be considered tentative.
Slides for every week will be available on Mondays in pdf and ppt formats.

Here is a sample midterm and its solution
You can find homework solutions here -- each folder has a hwX_soln.html file with the solution of the hwX.
🔥 🔥 🔥 Here is a sample final exam and its solution

Week Dates Topics Slides | Notes Assigned Other
1 9/7 Course overview pdf | ppt | notes P1
2 9/12,14 Finite-state machines pdf | ppt | notes HW1 Automata Tutor
NFAs pdf | ppt | notes Examples (ppt | pdf)
3 9/19,21 Scanner generators pdf | ppt | notes HW2
Context-free grammars pdf | ppt | notes
4 9/26,28 Context-free grammars (ambiguity) pdf | ppt | notes HW3, P2
Syntax-directed translation pdf | ppt | notes
5 10/3,5 Java CUP pdf | ppt | notes HW4 Examples
Parsing pdf | ppt | notes
6 10/10,12 Topdown parsing pdf | ppt | notes HW5,
Topdown parsing (cont'd) pdf | ppt | notes P3
7 10/17,19 SDT for predictive parsing pdf | ppt | notes HW6
Static-semantic analysis pdf | ppt | notes
8 10/24,26 Review Session
Midterm Exam
9 10/31; 11/2 LR parsing pdf | ppt | notes HW7, P4
Types pdf | ppt
10 11/7,9 Runtime environments pdf | ppt | notes HW8
Cancelled
11 11/14,16 Parameter passing pdf | ppt | notes HW9
Variable accesses pdf | ppt | notes
12 11/21,23 Code generation pdf | ppt | notes P5
Thanksgiving
13 11/28,30 Code generation (cont'd) pdf | ppt | notes
Code generation (cont'd) pdf | ppt | notes
14 12/5,7 Optimization pdf | ppt | notes P6, HW10
SSA form and dataflow analysis pdf-1 | ppt-1
pdf-2 | ppt-2 | notes
Advanced topics
15 12/12 Review
12/18 Final exam 2:45 - 4:45 in NOLAND 132 Weeks 7-15