This course is an advanced study of important modern topics in the principles of programming languages. It builds on the material of 601.426/626, Principles of Programming Languages.
Topics covered include operational semantics, type systems, program analysis, and program verification. See the sylllabus for more details.
Programming in the course will be in OCaml, we will assume students are familiar with OCaml or can pick it up on their own.
It will meet for three days a week for an hour. The MW meetings will be lecture and the F meeting will be paper readings and will share a time slot with the PL reading group.
This course is recommended for students that already have background in programming language principles, e.g. by taking 601.426/626. If you have the background but did not take 601.426/626, email the professor to obtain permission to add.