Thu 16 Jun 2022 13:30 - 13:50 at Macaw - Types Chair(s): Michael Greenberg

A language supporting polymorphism is a boon to programmers: they can express complex ideas once and reuse functions in a variety of situations. However, polymorphism is pain for compilers tasked with producing efficient code that manipulates concrete values.

This paper presents a new intermediate language that allows for efficient static compilation, while still supporting flexible polymorphism. Specifically, it permits polymorphism over not only the types of values, but also the representation of values, the arity of primitive machine functions, and the evaluation order of arguments—all three of which are useful in practice. The key insight is to encode information about a value’s calling convention in the kind of its type, rather than in the type itself.

https://dl.acm.org/doi/10.1145/3408986
this URL might only work when visiting from a https://dl.acm.org/doi/10.1145/3408986 URL.

Thu 16 Jun

Displayed time zone: Pacific Time (US & Canada) change

13:30 - 14:50
TypesSIGPLAN Track at Macaw
Chair(s): Michael Greenberg Stevens Institute of Technology
13:30
20m
Talk
(ICFP 2020) Kinds Are Calling Conventions
SIGPLAN Track
Paul Downen University of Massachusetts Lowell, Zena M. Ariola University of Oregon, Simon Peyton Jones Microsoft Research, Richard A. Eisenberg Tweag
Link to publication DOI Authorizer link Pre-print
13:50
20m
Talk
(OOPSLA 2021) Study of the subtyping machine of nominal subtyping with variance
SIGPLAN Track
Ori Roth Technion
Link to publication DOI Authorizer link Pre-print
14:10
20m
Talk
(POPL 2021) Fully Abstract from Static to Gradual
SIGPLAN Track
Koen Jacobs KU Leuven, Amin Timany Aarhus University, Dominique Devriese Vrije Universiteit Brussel
14:30
20m
Talk
(POPL 2021) On the Semantic Expressiveness of Recursive Types
SIGPLAN Track
Marco Patrignani University of Trento, Eric Mark Martin Stanford, Dominique Devriese Vrije Universiteit Brussel