15-312 Foundations of Programming Languages
Lecture 18: Records

In this lecture we introduce records as an extension of products. We consider properties of typing and operational semantics, following by an investigation of subtyping. Records permit various forms of subtyping, which can have profound consequences for the implementation. This include depth subtyping, width subtyping, and exchange subtyping.

With a basic understanding of records we are ready to discuss some features of object-oriented languages and we develop a succession of increasingly complex models of objects.


[ Home | Schedule | Assignments | Software | Resources ]

fp@cs
Frank Pfenning