ICFP 2016
40 papers
- A fully concurrent garbage collector for functional programs on multicore processors
- A functional programmer's guide to homotopy type theory
- A glimpse of Hopjs
- A lambda-calculus foundation for universal probabilistic programming
- A new verified compiler backend for CakeML
- A type theory for incremental computational complexity with control flow changes
- All sorts of permutations (functional pearl)
- Allocation characterizes polyvariance: a unified methodology for polyvariant control-flow analysis
- An abstract memory functor for verified C static analyzers
- Automatically disproving fair termination of higher-order functional programs
- Combining effects and coeffects via grading
- Compact bit encoding schemes for simply-typed lambda-terms
- Constructive Galois connections: taming the Galois connection framework for mechanized metatheory
- Context-free session types
- Dag-calculus: a calculus for parallel computation
- Datafun: a functional Datalog
- Deriving a probability density calculator (functional pearl)
- Disjoint intersection types
- Dynamic witnesses for static type errors (or, ill-typed programs usually go wrong)
- Elaborator reflection: extending Idris in Idris
- Experience report: growing and shrinking polygons for random testing of computational geometry algorithms
- Farms, pipes, streams and reforestation: reasoning about structured parallel processes using types and hylomorphisms
- Fully abstract compilation via universal embedding
- Ghostbuster: a tool for simplifying and converting GADTs
- Hierarchical memory management for parallel programs
- Higher-order ghost state
- Indexed codata types
- Journey to find bugs in JavaScript web applications in the wild
- Oh Lord, please don't let contracts be misunderstood (functional pearl)
- Partial type equivalences for verified dependent interoperability
- Queueing and glueing for optimal partitioning (functional pearl)
- Refinement through restraint: bringing down the cost of verification
- Sequent calculus as a compiler intermediate language
- Set-theoretic types for polymorphic variants
- String diagrams for free monads (functional pearl)
- Talking bananas: structural recursion for session types
- TensorFlow: learning functions at scale
- The best of both worlds: linear functional programming without compromise
- Think like a vertex, behave like a function! a functional DSL for vertex-centric big graph processing
- Unifiers as equivalences: proof-relevant unification of dependently typed data