Powered by
21st ACM SIGPLAN International Conference on Functional Programming (ICFP 2016), September 18–24, 2016,
Nara, Japan
Frontmatter
Invited Talks
TensorFlow: Learning Functions at Scale
Martín Abadi
(Google, USA)
@InProceedings{ICFP16p1,
author = {Martín Abadi},
title = {TensorFlow: Learning Functions at Scale},
booktitle = {Proc.\ ICFP},
publisher = {ACM},
pages = {1-0},
doi = {},
year = {2016},
}
Research Track
Session 1
Farms, Pipes, Streams and Reforestation: Reasoning about Structured Parallel Processes using Types and Hylomorphisms
David Castro,
Kevin Hammond, and
Susmit Sarkar
(University of St. Andrews, UK)
@InProceedings{ICFP16p46,
author = {David Castro and Kevin Hammond and Susmit Sarkar},
title = {Farms, Pipes, Streams and Reforestation: Reasoning about Structured Parallel Processes using Types and Hylomorphisms},
booktitle = {Proc.\ ICFP},
publisher = {ACM},
pages = {46-45},
doi = {},
year = {2016},
}
Dag-Calculus: A Calculus for Parallel Computation
Umut A. Acar,
Arthur Charguéraud,
Mike Rainey, and
Filip Sieczkowski
(Carnegie Mellon University, USA; Inria, France)
@InProceedings{ICFP16p61,
author = {Umut A. Acar and Arthur Charguéraud and Mike Rainey and Filip Sieczkowski},
title = {Dag-Calculus: A Calculus for Parallel Computation},
booktitle = {Proc.\ ICFP},
publisher = {ACM},
pages = {61-60},
doi = {},
year = {2016},
}
A Lambda-Calculus Foundation for Universal Probabilistic Programming
Johannes Borgström,
Ugo Dal Lago,
Andrew D. Gordon, and
Marcin Szymczak
(Uppsala University, Sweden; University of Bologna, Italy; Inria, France; Microsoft Research, UK; University of Edinburgh, UK)
@InProceedings{ICFP16p76,
author = {Johannes Borgström and Ugo Dal Lago and Andrew D. Gordon and Marcin Szymczak},
title = {A Lambda-Calculus Foundation for Universal Probabilistic Programming},
booktitle = {Proc.\ ICFP},
publisher = {ACM},
pages = {76-75},
doi = {},
year = {2016},
}
Session 2
A New Verified Compiler Backend for CakeML
Yong Kiam Tan,
Magnus O. Myreen,
Ramana Kumar,
Anthony Fox,
Scott Owens, and
Michael Norrish
(IHPC at A*STAR, Singapore; Chalmers University of Technology, Sweden; Data61 at CSIRO, Australia; UNSW, Australia; University of Cambridge, UK; University of Kent, UK; Australian National University, Australia)
@InProceedings{ICFP16p106,
author = {Yong Kiam Tan and Magnus O. Myreen and Ramana Kumar and Anthony Fox and Scott Owens and Michael Norrish},
title = {A New Verified Compiler Backend for CakeML},
booktitle = {Proc.\ ICFP},
publisher = {ACM},
pages = {106-105},
doi = {},
year = {2016},
}
Sequent Calculus as a Compiler Intermediate Language
Paul Downen,
Luke Maurer,
Zena M. Ariola, and
Simon Peyton Jones
(University of Oregon, USA; Microsoft Research, UK)
@InProceedings{ICFP16p121,
author = {Paul Downen and Luke Maurer and Zena M. Ariola and Simon Peyton Jones},
title = {Sequent Calculus as a Compiler Intermediate Language},
booktitle = {Proc.\ ICFP},
publisher = {ACM},
pages = {121-120},
doi = {},
year = {2016},
}
Refinement through Restraint: Bringing Down the Cost of Verification
Liam O'Connor,
Zilin Chen,
Christine Rizkallah,
Sidney Amani,
Japheth Lim,
Toby Murray,
Yutaka Nagashima,
Thomas Sewell, and
Gerwin Klein
(UNSW, Australia; Data61, Australia; University of Pennsylvania, USA; University of Melbourne, Australia)
@InProceedings{ICFP16p136,
author = {Liam O'Connor and Zilin Chen and Christine Rizkallah and Sidney Amani and Japheth Lim and Toby Murray and Yutaka Nagashima and Thomas Sewell and Gerwin Klein},
title = {Refinement through Restraint: Bringing Down the Cost of Verification},
booktitle = {Proc.\ ICFP},
publisher = {ACM},
pages = {136-135},
doi = {},
year = {2016},
}
Session 3
Fully Abstract Compilation via Universal Embedding
Max S. New,
William J. Bowman, and
Amal Ahmed
(Northeastern University, USA)
@InProceedings{ICFP16p151,
author = {Max S. New and William J. Bowman and Amal Ahmed},
title = {Fully Abstract Compilation via Universal Embedding},
booktitle = {Proc.\ ICFP},
publisher = {ACM},
pages = {151-150},
doi = {},
year = {2016},
}
Oh Lord, Please Don't Let Contracts Be Misunderstood (Functional Pearl)
Christos Dimoulas,
Max S. New,
Robert Bruce Findler, and
Matthias Felleisen
(PLT, USA)
@InProceedings{ICFP16p166,
author = {Christos Dimoulas and Max S. New and Robert Bruce Findler and Matthias Felleisen},
title = {Oh Lord, Please Don't Let Contracts Be Misunderstood (Functional Pearl)},
booktitle = {Proc.\ ICFP},
publisher = {ACM},
pages = {166-165},
doi = {},
year = {2016},
}
A Type Theory for Incremental Computational Complexity with Control Flow Changes
Ezgi Çiçek,
Zoe Paraskevopoulou, and
Deepak Garg
(MPI-SWS, Germany; Princeton University, USA)
@InProceedings{ICFP16p181,
author = {Ezgi Çiçek and Zoe Paraskevopoulou and Deepak Garg},
title = {A Type Theory for Incremental Computational Complexity with Control Flow Changes},
booktitle = {Proc.\ ICFP},
publisher = {ACM},
pages = {181-180},
doi = {},
year = {2016},
}
Session 4
Compact Bit Encoding Schemes for Simply-Typed Lambda-Terms
Kotaro Takeda,
Naoki Kobayashi,
Kazuya Yaguchi, and
Ayumi Shinohara
(University of Tokyo, Japan; Tohoku University, Japan)
@InProceedings{ICFP16p196,
author = {Kotaro Takeda and Naoki Kobayashi and Kazuya Yaguchi and Ayumi Shinohara},
title = {Compact Bit Encoding Schemes for Simply-Typed Lambda-Terms},
booktitle = {Proc.\ ICFP},
publisher = {ACM},
pages = {196-195},
doi = {},
year = {2016},
}
Queueing and Glueing for Optimal Partitioning (Functional Pearl)
Shin-Cheng Mu,
Yu-Hsi Chiang, and
Yu-Han Lyu
(Academia Sinica, Taiwan; National Taiwan University, Taiwan; Dartmouth College, USA)
@InProceedings{ICFP16p211,
author = {Shin-Cheng Mu and Yu-Hsi Chiang and Yu-Han Lyu},
title = {Queueing and Glueing for Optimal Partitioning (Functional Pearl)},
booktitle = {Proc.\ ICFP},
publisher = {ACM},
pages = {211-210},
doi = {},
year = {2016},
}
All Sorts of Permutations (Functional Pearl)
Jan Christiansen,
Nikita Danilenko, and
Sandra Dylus
(Flensburg University of Applied Sciences, Germany; University of Kiel, Germany)
@InProceedings{ICFP16p226,
author = {Jan Christiansen and Nikita Danilenko and Sandra Dylus},
title = {All Sorts of Permutations (Functional Pearl)},
booktitle = {Proc.\ ICFP},
publisher = {ACM},
pages = {226-225},
doi = {},
year = {2016},
}
Session 5
A Glimpse of Hopjs
Manuel Serrano and
Vincent Prunet
(Inria, France)
@InProceedings{ICFP16p241,
author = {Manuel Serrano and Vincent Prunet},
title = {A Glimpse of Hopjs},
booktitle = {Proc.\ ICFP},
publisher = {ACM},
pages = {241-240},
doi = {},
year = {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, and
Hideya Iwasaki
(Kyushu Institute of Technology, Japan; Kochi University of Technology, Japan; National Institute of Informatics, Japan; University of Tokyo, Japan; University of Electro-Communications, Japan)
@InProceedings{ICFP16p265,
author = {Kento Emoto and Kiminori Matsuzaki and Zhenjiang Hu and Akimasa Morihata and Hideya Iwasaki},
title = {Think Like a Vertex, Behave Like a Function! A Functional DSL for Vertex-Centric Big Graph Processing},
booktitle = {Proc.\ ICFP},
publisher = {ACM},
pages = {265-264},
doi = {},
year = {2016},
}
Datafun: A Functional Datalog
Michael Arntzenius and
Neelakantan R. Krishnaswami
(University of Birmingham, UK)
@InProceedings{ICFP16p280,
author = {Michael Arntzenius and Neelakantan R. Krishnaswami},
title = {Datafun: A Functional Datalog},
booktitle = {Proc.\ ICFP},
publisher = {ACM},
pages = {280-279},
doi = {},
year = {2016},
}
Session 6
Dynamic Witnesses for Static Type Errors (or, Ill-Typed Programs Usually Go Wrong)
Eric L. Seidel,
Ranjit Jhala, and
Westley Weimer
(University of California at San Diego, USA; University of Virginia, USA)
@InProceedings{ICFP16p295,
author = {Eric L. Seidel and Ranjit Jhala and Westley Weimer},
title = {Dynamic Witnesses for Static Type Errors (or, Ill-Typed Programs Usually Go Wrong)},
booktitle = {Proc.\ ICFP},
publisher = {ACM},
pages = {295-294},
doi = {},
year = {2016},
}
Automatically Disproving Fair Termination of Higher-Order Functional Programs
Keiichi Watanabe,
Ryosuke Sato,
Takeshi Tsukada, and
Naoki Kobayashi
(University of Tokyo, Japan)
@InProceedings{ICFP16p310,
author = {Keiichi Watanabe and Ryosuke Sato and Takeshi Tsukada and Naoki Kobayashi},
title = {Automatically Disproving Fair Termination of Higher-Order Functional Programs},
booktitle = {Proc.\ ICFP},
publisher = {ACM},
pages = {310-309},
doi = {},
year = {2016},
}
Higher-Order Ghost State
Ralf Jung,
Robbert Krebbers,
Lars Birkedal, and
Derek Dreyer
(MPI-SWS, Germany; Aarhus University, Denmark)
@InProceedings{ICFP16p325,
author = {Ralf Jung and Robbert Krebbers and Lars Birkedal and Derek Dreyer},
title = {Higher-Order Ghost State},
booktitle = {Proc.\ ICFP},
publisher = {ACM},
pages = {325-324},
doi = {},
year = {2016},
}
Session 7
Unifiers as Equivalences: Proof-Relevant Unification of Dependently Typed Data
Jesper Cockx,
Dominique Devriese, and
Frank Piessens
(iMinds, Belgium; KU Leuven, Belgium)
@InProceedings{ICFP16p340,
author = {Jesper Cockx and Dominique Devriese and Frank Piessens},
title = {Unifiers as Equivalences: Proof-Relevant Unification of Dependently Typed Data},
booktitle = {Proc.\ ICFP},
publisher = {ACM},
pages = {340-339},
doi = {},
year = {2016},
}
Elaborator Reflection: Extending Idris in Idris
David Christiansen and
Edwin Brady
(Indiana University, USA; University of St. Andrews, UK)
@InProceedings{ICFP16p355,
author = {David Christiansen and Edwin Brady},
title = {Elaborator Reflection: Extending Idris in Idris},
booktitle = {Proc.\ ICFP},
publisher = {ACM},
pages = {355-354},
doi = {},
year = {2016},
}
Partial Type Equivalences for Verified Dependent Interoperability
Pierre-Evariste Dagand,
Nicolas Tabareau, and
Éric Tanter
(UPMC, France; LIP6, France; Inria, France; University of Chile, Chile)
@InProceedings{ICFP16p370,
author = {Pierre-Evariste Dagand and Nicolas Tabareau and Éric Tanter},
title = {Partial Type Equivalences for Verified Dependent Interoperability},
booktitle = {Proc.\ ICFP},
publisher = {ACM},
pages = {370-369},
doi = {},
year = {2016},
}
Session 8
An Abstract Memory Functor for Verified C Static Analyzers
Sandrine Blazy,
Vincent Laporte, and
David Pichardie
(University of Rennes 1, France; IRISA, France; IMDEA Software Institute, Spain; ENS Rennes, France)
@InProceedings{ICFP16p400,
author = {Sandrine Blazy and Vincent Laporte and David Pichardie},
title = {An Abstract Memory Functor for Verified C Static Analyzers},
booktitle = {Proc.\ ICFP},
publisher = {ACM},
pages = {400-399},
doi = {},
year = {2016},
}
Session 9
Ghostbuster: A Tool for Simplifying and Converting GADTs
Trevor L. McDonell,
Timothy A. K. Zakian,
Matteo Cimini, and
Ryan R. Newton
(Indiana University, USA; Oxford University, UK)
@InProceedings{ICFP16p415,
author = {Trevor L. McDonell and Timothy A. K. Zakian and Matteo Cimini and Ryan R. Newton},
title = {Ghostbuster: A Tool for Simplifying and Converting GADTs},
booktitle = {Proc.\ ICFP},
publisher = {ACM},
pages = {415-414},
doi = {},
year = {2016},
}
Indexed Codata Types
David Thibodeau,
Andrew Cave, and
Brigitte Pientka
(McGill University, Canada)
@InProceedings{ICFP16p430,
author = {David Thibodeau and Andrew Cave and Brigitte Pientka},
title = {Indexed Codata Types},
booktitle = {Proc.\ ICFP},
publisher = {ACM},
pages = {430-429},
doi = {},
year = {2016},
}
Disjoint Intersection Types
Bruno C. d. S. Oliveira,
Zhiyuan Shi, and
João Alpuim
(University of Hong Kong, China)
@InProceedings{ICFP16p445,
author = {Bruno C. d. S. Oliveira and Zhiyuan Shi and João Alpuim},
title = {Disjoint Intersection Types},
booktitle = {Proc.\ ICFP},
publisher = {ACM},
pages = {445-444},
doi = {},
year = {2016},
}
Set-Theoretic Types for Polymorphic Variants
Giuseppe Castagna,
Tommaso Petrucciani, and
Kim Nguyễn
(University of Paris Diderot, France; University of Genoa, Italy; University of Paris-Sud, France)
@InProceedings{ICFP16p460,
author = {Giuseppe Castagna and Tommaso Petrucciani and Kim Nguyễn},
title = {Set-Theoretic Types for Polymorphic Variants},
booktitle = {Proc.\ ICFP},
publisher = {ACM},
pages = {460-459},
doi = {},
year = {2016},
}
Session 10
Hierarchical Memory Management for Parallel Programs
Ram Raghunathan,
Stefan K. Muller,
Umut A. Acar, and
Guy Blelloch
(Carnegie Mellon University, USA; Inria, France)
@InProceedings{ICFP16p475,
author = {Ram Raghunathan and Stefan K. Muller and Umut A. Acar and Guy Blelloch},
title = {Hierarchical Memory Management for Parallel Programs},
booktitle = {Proc.\ ICFP},
publisher = {ACM},
pages = {475-474},
doi = {},
year = {2016},
}
Allocation Characterizes Polyvariance: A Unified Methodology for Polyvariant Control-Flow Analysis
Thomas Gilray,
Michael D. Adams, and
Matthew Might
(University of Utah, USA)
@InProceedings{ICFP16p490,
author = {Thomas Gilray and Michael D. Adams and Matthew Might},
title = {Allocation Characterizes Polyvariance: A Unified Methodology for Polyvariant Control-Flow Analysis},
booktitle = {Proc.\ ICFP},
publisher = {ACM},
pages = {490-489},
doi = {},
year = {2016},
}
Session 11
Talking Bananas: Structural Recursion for Session Types
Sam Lindley and
J. Garrett Morris
(University of Edinburgh, UK)
@InProceedings{ICFP16p520,
author = {Sam Lindley and J. Garrett Morris},
title = {Talking Bananas: Structural Recursion for Session Types},
booktitle = {Proc.\ ICFP},
publisher = {ACM},
pages = {520-519},
doi = {},
year = {2016},
}
Context-Free Session Types
Peter Thiemann and
Vasco T. Vasconcelos
(University of Freiburg, Germany; University of Lisbon, Portugal)
@InProceedings{ICFP16p550,
author = {Peter Thiemann and Vasco T. Vasconcelos},
title = {Context-Free Session Types},
booktitle = {Proc.\ ICFP},
publisher = {ACM},
pages = {550-549},
doi = {},
year = {2016},
}
Session 12
Combining Effects and Coeffects via Grading
Marco Gaboardi,
Shin-ya Katsumata,
Dominic Orchard,
Flavien Breuvart, and
Tarmo Uustalu
(SUNY Buffalo, USA; Kyoto University, Japan; University of Cambridge, UK; University of Kent, UK; Inria, France; Tallinn University of Technology, Estonia)
@InProceedings{ICFP16p565,
author = {Marco Gaboardi and Shin-ya Katsumata and Dominic Orchard and Flavien Breuvart and Tarmo Uustalu},
title = {Combining Effects and Coeffects via Grading},
booktitle = {Proc.\ ICFP},
publisher = {ACM},
pages = {565-564},
doi = {},
year = {2016},
}
String Diagrams for Free Monads (Functional Pearl)
Maciej Piróg and
Nicolas Wu
(KU Leuven, Belgium; University of Bristol, UK)
@InProceedings{ICFP16p580,
author = {Maciej Piróg and Nicolas Wu},
title = {String Diagrams for Free Monads (Functional Pearl)},
booktitle = {Proc.\ ICFP},
publisher = {ACM},
pages = {580-579},
doi = {},
year = {2016},
}
proc time: 0.7