Overview
Coursera Flash Sale
40% Off Coursera Plus for 3 Months!
Grab it
Explore row polymorphism for record types in systems with set-theoretic types through this 15-minute conference presentation from OOPSLA 2025. Learn how Giuseppe Castagna and Loïc Peyrot from CNRS - Université Paris Cité and IMDEA Software Institute approach record types that embed row variables and define subtyping relations by interpreting record types into sets of record values. Discover their λ-calculus equipped with operations for field extension, selection, and deletion, along with its operational semantics and sound type system. Examine the algorithms they provide for deciding typing and subtyping relations, and understand how to determine whether two types can be instantiated to make one subtype of the other. Gain insights into research motivated by the current trend of defining static type systems for dynamic languages, particularly their ongoing effort to endow the Elixir programming language with a gradual type system. Access the accompanying research article and understand the practical applications of union types, intersection types, and negation types in modern programming language design.
Syllabus
[OOPSLA'25] Polymorphic Records for Dynamic Languages
Taught by
ACM SIGPLAN