Conference program

See the ACM Digital Library Table of Contents for access to papers.

There is a zip file containing proceedings for ICFP and all affiliated events here. There is also a single PDF of the ICFP proceedings available here. Both are password protected with the same credentials as the conference wifi.

Videos of talks are available here.

See the affiliated events page for information about ICFP co-located events.

Monday, 31 August

8:45-9:00 Opening (General Chair)
9:00-10:00 Keynote: Ras Bodik (University of Washington)
Program Synthesis: Opportunities for the next Decade
10:00-10:30 Coffee
10:30-11:30 Session 1: Compilers
Functional Pearl: A SQL to C Compiler in 500 Lines of Code
Tiark Rompf, Purdue University (USA); Nada Amin, EPFL (Switzerland)
An Optimizing Compiler for a Purely Functional Web-Application Language
Adam Chlipala, MIT CSAIL (USA)
Pycket: A Tracing JIT For a Functional Language
Spenser Bauman, Indiana University (USA); Carl Friedrich Bolz, Kings College, London (UK); Robert Hirschfeld, Hassno-Plattner-Institut, Potsdam (Germany); Vasily Krilichev, Hassno-Plattner-Institut, Potsdam (Germany); Tobias Pape, Hassno-Plattner-Institut, Potsdam (Germany); Jeremy G. Siek, Indiana University (USA); Sam Tobin-Hochstadt, Indiana University (USA)
11:30-11:50 Break
11:50-12:30 Session 2: Types
1ML - Core and modules united (F-ing first-class modules)
Andreas Rossberg, Google (Germany)
Bounded Refinement Types
Niki Vazou, UC San Diego (USA); Alexander Bakst, UC San Diego (USA); Ranjit Jhala, UC San Diego (USA)
12:30-14:00 Lunch
14:00-15:00 Session 3: Miscellaneous
Applicative Bidirectional Programming with Lenses
Kazutaka Matsuda, Tohoku University (Japan); Meng Wang, University of Kent (UK)
Hygienic Resugaring of Compositional Desugaring
Justin Pombrio, Brown University (USA); Shriram Krishnamurthi, Brown University (USA)
XQuery and Static Typing: Tackling the Problem of Backward Axes
Pierre Genevès, CNRS (France); Nils Gesbert, Université Grenoble Alpes (France)
15:00-15:20 Break
15:20-16:20 Session 4: Foundations I
Noninterference for Free
William J. Bowman, Northeastern University CCIS (USA); Amal Ahmed, Northeastern University CCIS (USA)
Algebras and Coalgebras in the Light Affine Lambda Calculus
Marco Gaboardi, University of Dundee (UK) and Harvard University (USA); Romain Péchoux, Université de Lorraine (France)
Structures for structural recursion
Paul Downen, University of Oregon (USA); Philip Johnson-Freyd, University of Oregon (USA); Zena M. Ariola, University of Oregon (USA)
16:20-16:50 Tea
16:50-17:30 Session 5: Cost analysis
Denotational cost semantics for functional languages with inductive types
Norman Danner, Wesleyan University (USA); Daniel R. Licata, Wesleyan University (USA); Ramyaa Ramyaa, Wesleyan University (USA)
Analysing the Complexity of Functional Programs: Higher-Order Meets First-Order
Martin Avanzini, University of Bologna (Italy) & INRIA (France); Ugo Dal Lago, University of Bologna (Italy) & INRIA (France); Georg Moser, University of Innsbruck (Austria)
17:30-18:00 Program Chair's Report (John Reppy)
18:15-19:45 Poster Session / Welcome Reception: Hyatt Regency, Regency Foyer

Tuesday, 1 September

9:00-10:00 Keynote: Mary Sheeran, Chalmers University of Technology (Sweden)
Functional Programming and Hardware Design: Still Interesting after All These Years [slides]
10:00-10:30 Coffee
10:30-11:30 Session 6: Theorem provers
Pilsner: A Compositionally Verified Compiler for a Higher-Order Imperative Language
Georg Neis, MPI-SWS (Germany); Chung-Kil Hur, Seoul National University (Republic of Korea); Jan-Oliver Kaiser, MPI-SWS (Germany); Craig McLaughlin, University of Glasgow (UK); Derek Dreyer, MPI-SWS (Germany); Viktor Vafeiadis, MPI-SWS (Germany)
A Unification Algorithm for Coq Featuring Universe Polymorphism and Overloading
Beta Ziliani, MPI-SWS (Germany); Matthieu Sozeau, INRIA & PPS, Université Paris Diderot (France)
Foundational Extensible Corecursion: A Proof Assistant Perspective
Jasmin Christian Blanchette, INRIA & LORIA, Nancy (France); Andrei Popescu, Middlesex University. London (UK); Dmitriy Traytel, TU München (Germany)
11:30-11:50 Break
11:50-12:30 Student Research Competition I
12:30-14:00 Lunch
14:00-15:00 Session 7: Parallelism
Generating Performance Portable Code using Rewrite Rules: From High-level Functional Expressions to High-Performance OpenCL Code
Michel Steuwer, The University of Edinburgh (UK); Christian Fensch, Heriot-Watt University (UK); Sam Lindley, The University of Edinburgh (UK); Christophe Dubach, The University of Edinburgh (UK)
Adaptive Lock-Free Maps: Purely-Functional to Scalable
Ryan R. Newton, Indiana University (USA); Peter Fogg, Indiana University (USA); Ali Varamesh, Indiana University (USA)
Partial Aborts for Transactions via First-Class Continuations
Matthew Le, Rochester Institute of Technology (USA); Matthew Fluet, Rochester Institute of Technology (USA)
15:00-15:20 Break
15:20-16:20 Session 8: Foundations II
Which simple types have a unique inhabitant?
Gabriel Scherer, INRIA (France); Didier Rémy, INRIA (France)
Elaborating Evaluation-Order Polymorphism
Joshua Dunfield, University of British Columbia (Canada)
Automatic Refunctionalization to a Language with Copattern Matching: With Applications to the Expression Problem
Tillmann Rendel, University of Tübingen (Germany); Julia Trieflinger, University of Tübingen (Germany); Klaus Ostermann, University of Tübingen (Germany)
16:20-16:50 Tea
16:50-17:30 Session 9: Information flow
Functional Pearl: Two can keep a secret, if one of them uses Haskell
Alejandro Russo, Chalmers University of Technology (Sweden)
HLIO: Mixing Static and Dynamic Typing for Information-Flow Control in Haskell
Pablo Buiras, Chalmers University of Technology (Sweden); Dimitrios Vytiniotis, Microsoft Research (UK); Alejandro Russo, Chalmers University of Technology (Sweden)
17:30-18:15 ICFP Award Ceremony and Contest Presentation
17:30 ICFP Award Ceremony
17:45 ICFP Contest Presentation
20:00-22:30 Banquet: Vancouver Aquarium
Busses depart from Hyatt Regency 19:30

Wednesday, 2 September

9:00-10:00 Tribute to Paul Hudak
John Hughes, Chalmers University of Technology (Sweden) and John Peterson, Western State Colorado University (USA)
10:00-10:30 Coffee
10:30-11:30 Session 10: Domain-specific languages
Practical Principled FRP: Forget the past, change the future, FRPNow!
Atze van der Ploeg, Chalmers University of Technology (Sweden); Koen Claessen, Chalmers University of Technology (Sweden)
Certified Symbolic Management of Financial Multi-Party Contracts
Patrick Bahr, University of Copenhagen (Denmark); Jost Berthold, Commonwealth Bank of Australia (Australia); Martin Elsman, University of Copenhagen (Denmark)
A Fast Compiler for NetKAT
Steffen Smolka, Cornell University (USA); Spiridon Eliopoulos, Inhabited Type LLC (USA); Nate Foster, Cornell University (USA); Arjun Guha, University of Massachusetts Amherst (USA)
11:30-11:50 Break
11:50-12:30 Student Research Competition II
12:30-14:00 Lunch
14:00-15:00 Session 11: Data structures
RRB Vector: A Practical General Purpose Immutable Sequence
Nicolas Stucki, EPFL (Switzerland); Tiark Rompf, Purdue University (USA); Vlad Ureche, EPFL (Switzerland)
Functional Pearl: A Smart View on Datatypes
Mauro Jaskelioff, CIFASIS - CONICET (Argentina); Exequiel Rivas, CIFASIS - CONICET (Argentina)
Efficient Communication and Collection with Compact Normal Forms
Abhishek Kulkarni, Indiana University (USA); Ahmed El-Hassany, Indiana University (USA); Edward Z. Yang, Stanford University (USA); Giovanni Campagna, Stanford University (USA); Ryan Newton, Indiana University (USA); Ömer S. Ağacan, Indiana University (USA)
15:00-15:20 Break
15:20-16:20 Session 12: Contracts
Blame Assignment for Higher-Order Contracts with Intersection and Union
Matthias Keil, University of Freiburg (Germany); Peter Thiemann, University of Freiburg (Germany)
Expressing Contract Monitors as Patterns of Communication
Cameron Swords, Indiana University (USA); Amr Sabry, Indiana University (USA); Sam Tobin-Hochstadt, Indiana University (USA)
Learning Refinement Types
He Zhu, Purdue University (USA); Aditya V. Nori, Microsoft Research (USA); Suresh Jagannathan, Purdue University (USA)
16:20-16:50 Tea
16:50-17:30 Session 13: Type checking
Practical SMT-Based Type Error Localization
Zvonimir Pavlinovic, New York University (USA); Tim King, Verimag (France); Thomas Wies, New York University (USA)
GADTs Meet their Match: Pattern-Matching Warnings That Account for GADTs, Guards, and Laziness
Georgios Karachalias, Ghent University (Belgium); Tom Schrijvers, KU Leuven (Belgium); Dimitrios Vytiniotis, Microsoft Research Cambridge (UK); Simon Peyton Jones, Microsoft Research Cambridge (UK)
17:30-18:10 SRC Awards presentation - ICFP 2015 Closing - ICFP 2016 Presentation
18:30-20:30 Polyglot meetup, Unbounce, Suite #400 - 401 W. Georgia St.

Thursday, 3 September

18:00-19:45 Industrial reception, Regency C ballroom, Hyatt Regency