Row and Bounded Polymorphism via Disjoint Polymorphism
Mon 16 Nov 2020 00:00 - 00:20 at SPLASH-I - S-3 Chair(s): Elisa Gonzalez Boix, Atsushi Igarashi
Polymorphism and subtyping are important features in mainstream OO languages. The most common way to integrate the two is via F<: style bounded quantification. A closely related mechanism is row polymorphism, which provides an alternative to subtyping, while still enabling many of the same applications. Yet another approach is to have type systems with intersection types and polymorphism. A recent addition to this design space are calculi with disjoint intersection types and disjoint polymorphism. With all these alternatives it is natural to wonder how they are related.
This paper provides an answer to this question. We show that disjoint polymorphism can recover forms of both row polymorphism and bounded polymorphism, while retaining key desirable properties, such as type-safety and decidability. Furthermore, we identify the extra power of disjoint polymorphism which enables additional features that cannot be easily encoded in calculi with row polymorphism or bounded quantification alone. Ultimately we expect that our work is useful to inform language designers about the expressive power of those common features, and to simplify implementations and metatheory of feature-rich languages with polymorphism and subtyping.
Sun 15 NovDisplayed time zone: Central Time (US & Canada) change
11:00 - 12:20 | |||
11:00 20mTalk | Flow-Sensitive Type-Based Heap Cloning Research Papers Mohamad Barbar University of Technology, Sydney, Yulei Sui University of Technology Sydney, Shiping Chen Data61 at CSIRO, Australia / UNSW, Australia Link to publication DOI Media Attached | ||
11:20 20mTalk | Sound regular corecursion in coFJ Research Papers Davide Ancona DIBRIS, University of Genova, Italy, Pietro Barbieri Università di Genova, Francesco Dagnino DIBRIS, University of Genova, Italy, Elena Zucca University of Genova Link to publication DOI Media Attached | ||
11:40 20mTalk | Value Partitioning: A Lightweight Approach to Relational Static Analysis for JavaScript Research Papers Link to publication DOI Pre-print Media Attached | ||
12:00 20mTalk | Row and Bounded Polymorphism via Disjoint Polymorphism Research Papers Ningning Xie University of Toronto, Bruno C. d. S. Oliveira University of Hong Kong, Xuan Bi The University of Hong Kong, Tom Schrijvers KU Leuven Link to publication DOI Media Attached |