## ICFP Index

Published: 2016-09-17 (last updated: 2016-09-17)

- Monday 19th 0915-1015: TensorFlow: Learning functions at Scale
- Monday 19th 1045-1110: Farms, pipes, streams and reforestation: Reasoning about structured parallel processes using types and hylomorphisms
- Monday 19th 1110-1135: Dag-Calculus: A calculus for parallel computation
- Monday 19th 1135-1200: A Lambda-Calculus foundation for universal probabilistic programming
- Monday 19th 1200-1225: Deriving a probability density calculator (Functional Pearl)
- Monday 19th 1340-1405: A new verified compiler backend for CakeML
- Monday 19th 1405-1430: Sequent calculus as a compiler intermediate language
- Monday 19th 1430-1455: Refinement through restraint: Bringing down the cost of verification
- Monday 19th 1515-1540: Fully abstract compilation via universal embedding
- Monday 19th 1540-1605: Oh Lord, please don't let contracts be misunderstood (Functional Pearl)
- Monday 19th 1605-1630: A type theory for incremental computational complexity with control flow changes
- Monday 19th 1700-1725: Compact bit encoding schemes for simply-typed lambda-terms
- Monday 19th 1725-1750: Queuing and glueing for optimal partitioning (Functional Pearl)
- Monday 19th 1750-1815: All sorts of permutations (Functional Pearl)
- Tuesday 20th 0915-1015: Journey to find bugs in JavaScript web applications in the wild
- Tuesday 20th 1035-1100: A glimpse of Hopjs
- Tuesday 20th 1100-1125: Experience report: Growing and shrinking polygons for random testing of computational geometry algorithms
- Tuesday 20th 1125-1150: Think like a vertex, behave like a function! A functional DSL for vertex-centric big graph processing
- Tuesday 20th 1150-1215: Datafun: A functional datalog
- Tuesday 20th 1330-1355: Dynamic witnesses for static type errors (or ill-typed programs usually go wrong)
- Tuesday 20th 1355-1420: Automatically disproving fair termination of higher-order functional programs
- Tuesday 20th 1420-1445: Higher-order ghost state
- Tuesday 20th 1505-1620: Unifiers as equivalences: proof relevant unification of dependently typed data
- Tuesday 20th 1530-1555: Elaborator reflection: extending Idris in Idris
- Tuesday 20th 1555-1620: Partial type equivalences for verified dependent interoperability
- Tuesday 20th 1650-1715: Constructive Galois connections: Taming the Galois connection framework for mechanized metatheory
- Tuesday 20th 1715-1740: An abstract memory functor for verified C static analyzers
- Tuesday 20th 1740-1750: Program Chair Report
- Tuesday 20th 1750-1810: Programming Contest Presentation
- Wednesday 21st 0915-1015: A functional programmer's guide to homotypy type theory
- Wednesday 21st 1035-1100: Ghostbuster: A tool for simplifying and converting GADTs
- Wednesday 21st 1100-1125: Indexed Codata Types
- Wednesday 21st 1125-1150: Disjoint intersection types
- Wednesday 21st 1150-1215: Set-theoretic types for polymorphic variants
- Wednesday 21st 1330-1355: Hierarchical memory management for parallel programs
- Wednesday 21st 1355-1420: Allocation characterizes polyvariance: A unified methodology for polyvariant control-flow analysis
- Wednesday 21st 1420-1445: A fully concurrent garbage collector for functional programs on multicore processors
- Wednesday 21st 1505-1530: Talking bananas: Structural recursion for session types
- Wednesday 21st 1530-1555: The best of both worlds: Linear functional programming without compromise
- Wednesday 21st 1555-1620: Context-free session types
- Wednesday 21st 1650-1715: Combining effects and coeffects via grading
- Wednesday 21st 1715-1740: String diagrams for free monads (Functional Pearl)
- Wednesday 21st 1740-1755: SRC Awards
- Wednesday 21st 1755-1810: ICFP Closing/Presentation