Write a Blog >>
ICFP 2020
Thu 20 - Fri 28 August 2020
Tue 25 Aug 2020 14:30 - 14:45 at ICFP NY 4 - New York 4 Chair(s): Stephanie Weirich
Wed 26 Aug 2020 02:30 - 02:45 at ICFP Asia 4 - Asia 4 Chair(s): Stephanie Weirich

MLsub extends traditional Hindley-Milner type inference with subtyping while preserving compact principal types, an exciting new development. However, its specification in terms of biunification is difficult to understand, relying on the new concepts of bisubstitution and polar types, and making use of advanced notions from abstract algebra. In this paper, we show that these are in fact not essential to understanding the mechanisms at play in MLsub. We propose an alternative algorithm called Simple-sub, which can be implemented efficiently in under 500 lines of code (including parsing, simplification, and pretty-printing), looks more familiar, and is easier to understand.

We present an experimental evaluation of Simple-sub against MLsub on a million randomly-generated well-scoped expressions, showing that the two systems agree. The mutable automaton-based implementation of MLsub is quite far from its algebraic specification, leaving a lot of space for errors; in fact, our evaluation uncovered several bugs in it. We sketch more straightforward soundness and completeness arguments for Simple-sub, based on a syntactic specification of the type system.

This paper is meant to be light in formalism, rich in insights, and easy to consume for prospective designers of new type systems and programming languages. In particular, no abstract algebra is inflicted on readers.

Tue 25 Aug

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

14:30 - 16:30
New York 4ICFP Program at ICFP NY 4
Chair(s): Stephanie Weirich University of Pennsylvania

Public livestreams: YouTube, Bilibili (China)

14:30
15m
Talk
The Simple Essence of Algebraic Subtyping: Principal Type Inference with Subtyping Made Easy (Functional Pearl)
ICFP Program
DOI Pre-print Media Attached
14:45
15m
Talk
Liquid Resource Types
ICFP Program
Tristan Knoth University of California at San Diego, USA, Di Wang Carnegie Mellon University, Adam Reynolds University of California, San Diego, Nadia Polikarpova University of California, San Diego, Jan Hoffmann Carnegie Mellon University
DOI Media Attached
15:00
15m
Talk
Cosmo: A Concurrent Separation Logic for Multicore OCaml
ICFP Program
Glen Mével Inria, Université Paris-Saclay, CNRS, Laboratoire de recherche en informatique, Jacques-Henri Jourdan Universersité Paris Saclay, CNRS, LRI, François Pottier Inria, France
DOI Media Attached
15:15
15m
Talk
Composing and Decomposing Op-Based CRDTs with Semidirect Products
ICFP Program
Matthew Weidner Carnegie Mellon University, Christopher Meiklejohn Carnegie Mellon University, Heather Miller Carnegie Mellon University
DOI Media Attached
15:30
15m
Talk
A Quick Look at ImpredicativityDistinguished Paper
ICFP Program
Alejandro Serrano 47 Degrees, Spain, Jurriaan Hage Utrecht University, Netherlands, Simon Peyton Jones Microsoft, UK, Dimitrios Vytiniotis DeepMind
DOI Pre-print Media Attached
15:45
15m
Talk
A Unified View of Modalities in Type Systems
ICFP Program
Andreas Abel Gothenburg University, Jean-Philippe Bernardy University of Gothenburg, Sweden
DOI Media Attached
16:00
15m
Talk
Lower Your Guards: A Compositional Pattern-Match Coverage Checker
ICFP Program
Sebastian Graf Karlsruhe Institute of Technology, Simon Peyton Jones Microsoft, UK, Ryan Scott Galois, Inc.
Link to publication DOI Media Attached
16:15
15m
Talk
Signature restriction for polymorphic algebraic effects
ICFP Program
Taro Sekiyama National Institute of Informatics, Takeshi Tsukada Chiba University, Japan, Atsushi Igarashi Kyoto University, Japan
DOI Media Attached

Wed 26 Aug

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

02:30 - 04:30
Asia 4ICFP Program at ICFP Asia 4
Chair(s): Stephanie Weirich University of Pennsylvania

Public livestreams: YouTube, Bilibili (China)

02:30
15m
Talk
The Simple Essence of Algebraic Subtyping: Principal Type Inference with Subtyping Made Easy (Functional Pearl)
ICFP Program
DOI Pre-print Media Attached
02:45
15m
Talk
Liquid Resource Types
ICFP Program
Tristan Knoth University of California at San Diego, USA, Di Wang Carnegie Mellon University, Adam Reynolds University of California, San Diego, Nadia Polikarpova University of California, San Diego, Jan Hoffmann Carnegie Mellon University
DOI Media Attached
03:00
15m
Talk
Cosmo: A Concurrent Separation Logic for Multicore OCaml
ICFP Program
Glen Mével Inria, Université Paris-Saclay, CNRS, Laboratoire de recherche en informatique, Jacques-Henri Jourdan Universersité Paris Saclay, CNRS, LRI, François Pottier Inria, France
DOI Media Attached
03:15
15m
Talk
Composing and Decomposing Op-Based CRDTs with Semidirect Products
ICFP Program
Matthew Weidner Carnegie Mellon University, Christopher Meiklejohn Carnegie Mellon University, Heather Miller Carnegie Mellon University
DOI Media Attached
03:30
15m
Talk
A Quick Look at ImpredicativityDistinguished Paper
ICFP Program
Alejandro Serrano 47 Degrees, Spain, Jurriaan Hage Utrecht University, Netherlands, Simon Peyton Jones Microsoft, UK, Dimitrios Vytiniotis DeepMind
DOI Pre-print Media Attached
03:45
15m
Talk
A Unified View of Modalities in Type Systems
ICFP Program
Andreas Abel Gothenburg University, Jean-Philippe Bernardy University of Gothenburg, Sweden
DOI Media Attached
04:00
15m
Talk
Lower Your Guards: A Compositional Pattern-Match Coverage Checker
ICFP Program
Sebastian Graf Karlsruhe Institute of Technology, Simon Peyton Jones Microsoft, UK, Ryan Scott Galois, Inc.
Link to publication DOI Media Attached
04:15
15m
Talk
Signature restriction for polymorphic algebraic effects
ICFP Program
Taro Sekiyama National Institute of Informatics, Takeshi Tsukada Chiba University, Japan, Atsushi Igarashi Kyoto University, Japan
DOI Media Attached