OOPSLA 2016- Proceedings of the 2016 ACM SIGPLAN International Conference on Object-Oriented Programming, Systems, Languages, and Applications

Full Citation in the ACM Digital Library

SESSION: Optimization and Performance

A compiler for throughput optimization of graph algorithms on GPUs

Automatic parallelization of pure method calls via conditional future synthesis

Portable inter-workgroup barrier synchronisation for GPUs

Parallel incremental whole-program optimizations for Scala.js

SESSION: Semantics and Verification

Semantics-based program verifiers for all languages

Hoare-style specifications as correctness conditions for non-linearizable concurrent objects

An operational semantics for C/C++11 concurrency

Modeling and analysis of remote memory access programming

SESSION: Program Synthesis

Deriving divide-and-conquer dynamic programming algorithms using solver-aided transformations

Speeding up machine-code synthesis

Automated reasoning for web page layout

FIDEX: filtering spreadsheet data using examples

SESSION: Language Design and Programming Models I

Extensible access control with authorization contracts

Gentrification gone too far? affordable 2nd-class values for fun and (co-)effect

Incremental forest: a DSL for efficiently managing filestores

LaCasa: lightweight affinity and object capabilities in Scala

SESSION: Programming Frameworks, Tools, and Methodologies

Purposes, concepts, misfits, and a redesign of git

Apex: automatic programming assignment error explanation

Asserting reliable convergence for configuration management scripts

Dependent partitioning

SESSION: Static Analysis

Accelerating program analyses by cross-program training

An improved algorithm for slicing machine code

Call graphs for languages with parametric polymorphism

Type inference for static compilation of JavaScript

SESSION: Concurrency Analysis and Model Checking

Directed synthesis of failing concurrent executions

Maximal causality reduction for TSO and PSO

Precise and maximal race detection from incomplete traces

Stateless model checking with data-race preemption points

SESSION: Language Design and Programming Models II

Automatic enforcement of expressive security policies using enclaves

Chain: tasks and channels for reliable intermittent programs

GEMs: shared-memory parallel programming for Node.js

OrcO: a concurrency-first approach to objects

SESSION: Principles, Across the Compilation Stack

Semantic subtyping for imperative object-oriented languages

Parsing with first-class derivatives

The missing link: explaining ELF static linking, semantically

Type soundness for dependent object types (DOT)

SESSION: Runtime Support

Efficient and thread-safe objects for dynamically-typed languages

Hybrid STM/HTM for nested transactions on OpenJDK

Makalu: fast recoverable allocation of non-volatile memory

Prioritized garbage collection: explicit GC support for software caches

SESSION: Program Modeling and Learning

Computing repair alternatives for malformed programs using constraint attribute grammars

Probabilistic model for code with decision trees

Ringer: web automation by demonstration

Scalable verification of border gateway protocol configurations with an SMT solver

SESSION: Typing, in Practice

A practical framework for type inference error explanation

Dynamically diagnosing type errors in unsafe code

First-class effect reflection for effect-guided programming

Java and scala's type systems are unsound: the existential crisis of null pointers

SESSION: Bug Detection Analysis and Model Checking

Finding compiler bugs via live code mutation

Finding resume and restart errors in Android applications

Low-overhead and fully automated statistical debugging with abstraction refinement

To be precise: regression aware debugging