Blogs (28) >>
ICFP 2017
Sun 3 - Sat 9 September 2017 Oxford, United Kingdom
Fri 8 Sep 2017 14:00 - 14:30 at L1 - Day 2, Session 4

Functional dependencies are a popular extension to Haskell’s type-class system because they provide fine-grained control over type inference, resolve ambiguities and even enable type-level computations.

Unfortunately, several aspects of Haskell’s functional dependencies are ill-understood. In particular, the GHC compiler does not properly enforce the functional dependency property, and rejects well-typed programs because it does not know how to elaborate them into its core language, System FC.

This paper presents a novel formalization of functional dependencies that addresses these issues: We explicitly capture the functional dependency property in the type system, in the form of explicit type equalities. We also provide a type inference algorithm and an accompanying elaboration strategy which allows all well-typed programs to be elaborated into System FC.

Fri 8 Sep

Displayed time zone: Belfast change

14:00 - 15:00
Day 2, Session 4Haskell at L1
Elaboration on Functional Dependencies
Georgios Karachalias KU Leuven, Belgium, Tom Schrijvers KU Leuven
Quantified Class Constraints
Gert-Jan Bottu , Georgios Karachalias KU Leuven, Belgium, Tom Schrijvers KU Leuven, Bruno C. d. S. Oliveira University of Hong Kong, China, Philip Wadler University of Edinburgh, UK