Save Big on Coursera Plus. 7,000+ courses at $160 off. Limited Time Only!
Explore a 17-minute conference talk from OOPSLA2 2023 that delves into the relationship between structural subtyping and parametric polymorphism in programming languages. Investigate the comparative expressive power of these two features, focusing on how row and presence polymorphism can potentially encode structural subtyping for variant and record types. Examine the study's methodology, which utilizes various Church-style λ-calculi extended with records, variants, and different forms of structural subtyping and polymorphism. Learn about the compositional translations between calculi, including type preservation and operational correspondence results. Discover the limitations of encoding full subtyping via polymorphism and the nuanced expressiveness landscape revealed through imposed restrictions on source and target types. Gain insights into the subtle differences and similarities between structural subtyping and parametric polymorphism in providing flexibility and reusability to programmers.