Advanced Foundations of Programming Languages

Course ID 15413

Description An advanced follow-on to 15-312 developing further ideas and results in the theory of programming languages.

Key Topics
Type theory, phase distinctions, dependent types, theory of effects.

Required Background Knowledge
An A in 15-312. Strong math abilities.

Course Relevance
Undergraduates who have earned an A in 15-312.

Course Goals
Depth and breadth in the theory of programming languages so as to bridge up to current research.

Learning Resources
Practical Foundations for Programming Languages (2nd Edition) by Robert Harper, readings to be assigned.

Assessment Structure
Largely homework and final project.