Typed Compilation
Typed Compilation (15-819B) is a graduate-level course on advanced compilation
strategies that preserve and exploit type information. The course's topics
include type checking, type-preserving program transformations, type-directed
optimization, type systems for low-level languages, and certifying compilation.
Time and place
The course meets Mondays and Wednesdays in Wean Hall 5409B.
Textbook
The textbook for the course is Type Systems by Benjamin Pierce. The
book is available
on-line.
Topics
The topics to be covered (if time permits) are as follows. Many of these topics
relate directly to research papers, which are given as supplementary reading.
-
Introduction
-
Data representation
-
Module compilation
-
Phase splitting
-
Translucent sums and singleton kinds (supplementary reading:
1,
2,
3)
-
Core compilation
-
Intensional type analysis revisited
-
Typechecking intermediate languages
-
Low-level type systems
-
Memory management
-
Tag-free garbage collection
-
Region inference
-
Capability type systems
-
Dependent types
-
Array bounds check elimination
-
Resource bound certification
-
Synthetic dependent types