Links to accepted papers for the 21st ACM SIGPLAN International Conference on Functional Programming (ICFP 2016). Pull requests welcome!
(Similar pages are available for older ICFP (2012, 2013, 2014, 2015), POPL (2013, 2014, 2015, 2016), and PLDI 2014.)
Note: if you are editing this repository, please remember to use the Markdown syntax for hard line breaks, namely two spaces at the end of the line.
A Fully Concurrent Garbage Collector for Functional Programs on Multicore Processors
Katsuhiro Ueno, Atsushi Ohori
A Glimpse of Hopjs
Manuel Serrano, Vincent Prunet
A Lambda-Calculus Foundation for Universal Probabilistic Programming
Johannes Borgström, Ugo Dal Lago, Andrew D. Gordon, Marcin Szymczak
(preprint from arXiv)
A New Verified Compiler Backend for CakeML
Yong Kiam Tan, Magnus O. Myreen, Ramana Kumar, Anthony Fox, Scott Owens, Michael Norrsh
A Type Theory for Incremental Computational Complexity with Control Flow Changes
Ezgi Çiçek, Zoe Paraskevopoulou, Deepak Garg
All Sorts of Permutations (Functional Pearl)
Jan Christiansen, Nikita Danilenko, Sandra Dylus
Allocation Characterizes Polyvariance
Thomas Gilray, Michael D. Adams, Matthew Might
(preprint)
An Abstract Memory Functor for Verified C Static Analyzers
Sandrine Blazy, Vincent Laporte, David Pichardie
Automatically Disproving Fair Termination of Higher-Order Functional Programs
Keiichi Watanabe, Ryosuke Sato, Takeshi Tsukada, Naoki Kobayashi
Combining Effects and Coeffects via Grading
Marco Gaboardi, Shinya Katsumata, Dominic Orchard, Flavien Breuvart, Tarmo Uustalu
Compact Bit Encoding Schemes for Simply-Typed Lambda-Terms
Kotaro Takeda, Naoki Kobayashi, Kazuya Yaguchi, Ayumi Shinohara
Constructive Galois Connections: Taming the Galois Connection Framework for Mechanized Metatheory
David Darais, David Van Horn
(preprint)
Dag-Calculus: A Calculus for Parallel Computation
Umut Acar, Arthur Charguéraud, Mike Rainey, Filip Sieczkowski
(preprint)
Datafun: A Functional Datalog
Michael Arntzenius, Neelakantan Krishnaswami
(preprint)
Deriving a Probability Density Calculator (Functional Pearl)
Wazim Mohammed Ismail, Chung-chieh Shan
(draft)
Disjoint Intersection Types
Bruno Oliveira, Zhiyuan Shi, João Miguel Queiroz de Ataíde Agorreta de Alpuim
Dynamic Witnesses for Static Type Errors
Eric Seidel, Ranjit Jhala, Westley Weimer
Elaborator Reflection: Extending Idris in Idris
David Christiansen, Edwin Brady
(draft)
Experience Report: Growing and Shrinking Polygons for Random Testing of Computational Geometry Algorithms
Ilya Sergey
(preprint)
Farms, Pipes, Streams, and Reforestation: Reasoning about Structured Parallel Processes using Types and Hylomorphisms
David Castro, Kevin Hammond, Susmit Sarkar
Fully Abstract Compilation via Universal Embedding
Max New, William J. Bowman, Amal Ahmed
(preprint)
Ghostbuster: A Tool for Simplifying and Converting GADTs
Trevor McDonell, Timothy Zakian, Matteo Cimini, Ryan Newton
(preprint)
Hierarchical Memory Management for Parallel Programs
Ram Raghunathan, Stefan K. Muller, Umut Acar, Guy Blelloch
Higher-Order Ghost State
Ralf Jung, Robbert Krebbers, Lars Birkedal, Derek Dreyer
(preprint)
Indexed Codata Types
David Thibodeau, Andrew Cave, Brigitte Pientka
(preprint)
Oh Lord, Please Don't Let Contracts Be Misunderstood: A Variation on Old Gems (Functional Pearl)
Christos Dimoulas, Max New, Robby Findler, Matthias Felleisen
Partial Type Equivalences for Verified Dependent Interoperability
Pierre-Évariste Dagand, Nicolas Tabareau, Éric Tanter
(preprint)
Queueing and Glueing for Optimal Partitioning (Functional Pearl)
Shin-Cheng Mu, Yu-Hsi Chiang, Yu-Han Lyu
(preprint)
Refinement through Restraint: Bringing Down the Cost of Verification
Liam O'Connor, Zilin Chen, Sidney Amani, Christine Rizkallah, Japheth Lim, Thomas Sewll, Yutaka Nagashima, Alex Hixon, Joseph Tuong, Toby Murray, Gerwin Klein, Gernot Heiser
(draft)
Sequent Calculus as a Compiler Intermediate Language
Paul Downen, Luke Maurer, Zena Ariola, Simon Peyton Jones
(preprint, extended version)
Set-Theoretic Types for Polymorphic Variants
Giuseppe Castagna, Tommaso Petrucciani, Kim Nguyễn
(preprint from arXiv)
String Diagrams for Free Monads (Functional Pearl)
Maciej Piróg, Nicolas Wu
Talking Bananas: Structural Recursion for Session Types
Sam Lindley, J. Garrett Morris
(draft)
The Best of Both Worlds: Linear Functional Programming without Compromise
J. Garrett Morris
Think Like a Vertex, Behave Like a Function! A Functional DSL for Vertex-Centric Big Graph Processing
Kento Emoto, Kiminori Matsuzaki, Zhenjiang Hu, Akimasa Morihata, Hideya Iwasaki
Towards Context-Free Session Types
Peter Thiemann, Vasco Vasconcelos
Unifiers as Equivalences: Proof-Relevant Unification of Dependently Typed Data
Jesper Cockx, Dominique Devriese, Frank Piessens
(preprint)
As of writing, the submission process for ICFP'16 co-located events is not finished. Feel free to send a pull-request with list of accepted papers and contribute links to preprints.