| 2016 | A fully concurrent garbage collector for functional programs on multicore processors. Katsuhiro Ueno, Atsushi Ohori |
| 2016 | A functional programmer's guide to homotopy type theory. Dan Licata |
| 2016 | A glimpse of Hopjs. Manuel Serrano, Vincent Prunet |
| 2016 | A lambda-calculus foundation for universal probabilistic programming. Johannes Borgström, Ugo Dal Lago, Andrew D. Gordon, Marcin Szymczak |
| 2016 | A new verified compiler backend for CakeML. Yong Kiam Tan, Magnus O. Myreen, Ramana Kumar, Anthony C. J. Fox, Scott Owens, Michael Norrish |
| 2016 | A type theory for incremental computational complexity with control flow changes. Ezgi Çiçek, Zoe Paraskevopoulou, Deepak Garg |
| 2016 | All sorts of permutations (functional pearl). Jan Christiansen, Nikita Danilenko, Sandra Dylus |
| 2016 | Allocation characterizes polyvariance: a unified methodology for polyvariant control-flow analysis. Thomas Gilray, Michael D. Adams, Matthew Might |
| 2016 | An abstract memory functor for verified C static analyzers. Sandrine Blazy, Vincent Laporte, David Pichardie |
| 2016 | Automatically disproving fair termination of higher-order functional programs. Keiichi Watanabe, Ryosuke Sato, Takeshi Tsukada, Naoki Kobayashi |
| 2016 | Combining effects and coeffects via grading. Marco Gaboardi, Shin-ya Katsumata, Dominic A. Orchard, Flavien Breuvart, Tarmo Uustalu |
| 2016 | Compact bit encoding schemes for simply-typed lambda-terms. Kotaro Takeda, Naoki Kobayashi, Kazuya Yaguchi, Ayumi Shinohara |
| 2016 | Constructive Galois connections: taming the Galois connection framework for mechanized metatheory. David Darais, David Van Horn |
| 2016 | Context-free session types. Peter Thiemann, Vasco T. Vasconcelos |
| 2016 | Dag-calculus: a calculus for parallel computation. Umut A. Acar, Arthur Charguéraud, Mike Rainey, Filip Sieczkowski |
| 2016 | Datafun: a functional Datalog. Michael Arntzenius, Neelakantan R. Krishnaswami |
| 2016 | Deriving a probability density calculator (functional pearl). Wazim Mohammed Ismail, Chung-chieh Shan |
| 2016 | Disjoint intersection types. Bruno C. d. S. Oliveira, Zhiyuan Shi, João Alpuim |
| 2016 | Dynamic witnesses for static type errors (or, ill-typed programs usually go wrong). Eric L. Seidel, Ranjit Jhala, Westley Weimer |
| 2016 | Elaborator reflection: extending Idris in Idris. David R. Christiansen, Edwin C. Brady |
| 2016 | Experience report: growing and shrinking polygons for random testing of computational geometry algorithms. Ilya Sergey |
| 2016 | Farms, pipes, streams and reforestation: reasoning about structured parallel processes using types and hylomorphisms. David Castro, Kevin Hammond, Susmit Sarkar |
| 2016 | Fully abstract compilation via universal embedding. Max S. New, William J. Bowman, Amal Ahmed |
| 2016 | Ghostbuster: a tool for simplifying and converting GADTs. Trevor L. McDonell, Timothy A. K. Zakian, Matteo Cimini, Ryan R. Newton |
| 2016 | Hierarchical memory management for parallel programs. Ram Raghunathan, Stefan K. Muller, Umut A. Acar, Guy E. Blelloch |
| 2016 | Higher-order ghost state. Ralf Jung, Robbert Krebbers, Lars Birkedal, Derek Dreyer |
| 2016 | Indexed codata types. David Thibodeau, Andrew Cave, Brigitte Pientka |
| 2016 | Journey to find bugs in JavaScript web applications in the wild. Sukyoung Ryu |
| 2016 | Oh Lord, please don't let contracts be misunderstood (functional pearl). Christos Dimoulas, Max S. New, Robert Bruce Findler, Matthias Felleisen |
| 2016 | Partial type equivalences for verified dependent interoperability. Pierre-Évariste Dagand, Nicolas Tabareau, Éric Tanter |
| 2016 | Proceedings of the 21st ACM SIGPLAN International Conference on Functional Programming, ICFP 2016, Nara, Japan, September 18-22, 2016 Jacques Garrigue, Gabriele Keller, Eijiro Sumii |
| 2016 | Queueing and glueing for optimal partitioning (functional pearl). Shin-Cheng Mu, Yu-Hsi Chiang, Yu-Han Lyu |
| 2016 | Refinement through restraint: bringing down the cost of verification. Liam O'Connor, Zilin Chen, Christine Rizkallah, Sidney Amani, Japheth Lim, Toby C. Murray, Yutaka Nagashima, Thomas Sewell, Gerwin Klein |
| 2016 | Sequent calculus as a compiler intermediate language. Paul Downen, Luke Maurer, Zena M. Ariola, Simon Peyton Jones |
| 2016 | Set-theoretic types for polymorphic variants. Giuseppe Castagna, Tommaso Petrucciani, Kim Nguyen |
| 2016 | String diagrams for free monads (functional pearl). Maciej Piróg, Nicolas Wu |
| 2016 | Talking bananas: structural recursion for session types. Sam Lindley, J. Garrett Morris |
| 2016 | TensorFlow: learning functions at scale. Martín Abadi |
| 2016 | The best of both worlds: linear functional programming without compromise. J. Garrett Morris |
| 2016 | 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 |
| 2016 | Unifiers as equivalences: proof-relevant unification of dependently typed data. Jesper Cockx, Dominique Devriese, Frank Piessens |