Powered by
Conference Publishing Consulting

2016 ACM SIGPLAN International Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA 2016), November 2–4, 2016, Amsterdam, Netherlands

OOPSLA 2016 – Proceedings

Contents - Abstracts - Authors

Frontmatter

Title Page
Article: oopsla16foreword-fm000-p doi:
Message from the Chairs
Article: oopsla16foreword-fm001-p doi:
Message from the OOPSLA Artifact Evaluation Chairs
Article: oopsla16foreword-fm002-p doi:
OOPSLA 2016 Organization
Article: oopsla16foreword-fm003-p doi:
SPLASH 2016 Sponsors and Supporters
Article: oopsla16foreword-fm004-p doi:

Optimization and Performance

A Compiler for Throughput Optimization of Graph Algorithms on GPUs
Sreepathi Pai and Keshav Pingali
(University of Texas at Austin, USA)
Article: oopsla16main-main92-p doi:
Automatic Parallelization of Pure Method Calls via Conditional Future Synthesis
Rishi Surendran and Vivek Sarkar
(Rice University, USA)
Article: oopsla16main-main175-p doi:
Portable Inter-workgroup Barrier Synchronisation for GPUs
Tyler Sorensen, Alastair F. Donaldson, Mark Batty, Ganesh Gopalakrishnan, and Zvonimir Rakamarić
(Imperial College London, UK; University of Kent, UK; University of Utah, USA)
Article: oopsla16main-main157-p doi:
Parallel Incremental Whole-Program Optimizations for Scala.js
Sébastien Doeraene and Tobias Schlatter
(EPFL, Switzerland)
Article: oopsla16main-main84-p doi:

Semantics and Verification

Semantics-Based Program Verifiers for All Languages
Andrei Stefănescu, Daejun Park, Shijiao Yuwen, Yilong Li, and Grigore Roşu
(University of Illinois at Urbana-Champaign, USA; Runtime Verification, USA)
Article: oopsla16main-main139-p doi:
Hoare-Style Specifications as Correctness Conditions for Non-linearizable Concurrent Objects
Ilya Sergey, Aleksandar Nanevski, Anindya Banerjee, and Germán Andrés Delbianco
(University College London, UK; IMDEA Software Institute, Spain)
Article: oopsla16main-main49-p doi:
An Operational Semantics for C/C++11 Concurrency
Kyndylan Nienhuis, Kayvan Memarian, and Peter Sewell
(University of Cambridge, UK)
Article: oopsla16main-main40-p doi:
Modeling and Analysis of Remote Memory Access Programming
Andrei Marian Dan, Patrick Lam, Torsten Hoefler, and Martin Vechev
(ETH Zurich, Switzerland; University of Waterloo, Canada)
Article: oopsla16main-main162-p doi:

Program Synthesis

Deriving Divide-and-Conquer Dynamic Programming Algorithms using Solver-Aided Transformations
Shachar Itzhaky, Rohit Singh, Armando Solar-Lezama, Kuat Yessenov, Yongquan Lu, Charles Leiserson, and Rezaul Chowdhury
(Massachusetts Institute of Technology, USA; Stony Brook University, USA)
Article: oopsla16main-main17-p doi:
Speeding Up Machine-Code Synthesis
Venkatesh Srinivasan, Tushar Sharma, and Thomas Reps
(University of Wisconsin-Madison, USA; GrammaTech, USA)
Article: oopsla16main-main61-p doi:
Automated Reasoning for Web Page Layout
Pavel Panchekha and Emina Torlak
(University of Washington, USA)
Article: oopsla16main-main69-p doi:
FIDEX: Filtering Spreadsheet Data using Examples
Xinyu Wang, Sumit Gulwani, and Rishabh Singh
(University of Texas at Austin, USA; Microsoft Research, USA)
Article: oopsla16main-main151-p doi:

Language Design and Programming Models I

Extensible Access Control with Authorization Contracts
Scott Moore, Christos Dimoulas, Robert Bruce Findler, Matthew Flatt, and Stephen Chong
(Harvard University, USA; Northwestern University, USA; University of Utah, USA)
Article: oopsla16main-main122-p doi:
Gentrification Gone too Far? Affordable 2nd-Class Values for Fun and (Co-)Effect
Leo Osvald, Grégory Essertel, Xilun Wu, Lilliam I. González Alayón, and Tiark Rompf
(Purdue University, USA)
Article: oopsla16main-main65-p doi:
Incremental Forest: A DSL for Efficiently Managing Filestores
Jonathan DiLorenzo, Richard Zhang, Erin Menzies, Kathleen Fisher, and Nate Foster
(Cornell University, USA; University of Pennsylvania, USA; Tufts University, USA)
Article: oopsla16main-main172-p doi:
LaCasa: Lightweight Affinity and Object Capabilities in Scala
Philipp Haller and Alex Loiko
(KTH, Sweden; Google, Sweden)
Article: oopsla16main-main210-p doi:

Programming Frameworks, Tools, and Methodologies

Purposes, Concepts, Misfits, and a Redesign of Git
Santiago Perez De Rosso and Daniel Jackson
(Massachusetts Institute of Technology, USA)
Article: oopsla16main-main109-p doi:
Apex: Automatic Programming Assignment Error Explanation
Dohyeong Kim, Yonghwi Kwon, Peng Liu, I. Luk Kim, David Mitchel Perry, Xiangyu Zhang, and Gustavo Rodriguez-Rivera
(Purdue University, USA)
Article: oopsla16main-main153-p doi:
Asserting Reliable Convergence for Configuration Management Scripts
Oliver Hanappi, Waldemar Hummer, and Schahram Dustdar
(Vienna University of Technology, Austria)
Article: oopsla16main-main51-p doi:
Dependent Partitioning
Sean Treichler, Michael Bauer, Rahul Sharma, Elliott Slaughter, and Alex Aiken
(Stanford University, USA; NVIDIA Research, USA)
Article: oopsla16main-main102-p doi:

Static Analysis

Accelerating Program Analyses by Cross-Program Training
Sulekha Kulkarni, Ravi Mangal, Xin Zhang, and Mayur Naik
(Georgia Tech, USA)
Article: oopsla16main-main124-p doi:
An Improved Algorithm for Slicing Machine Code
Venkatesh Srinivasan and Thomas Reps
(University of Wisconsin-Madison, USA; GrammaTech, USA)
Article: oopsla16main-main56-p doi:
Call Graphs for Languages with Parametric Polymorphism
Dmitry Petrashko, Vlad Ureche, Ondřej Lhoták, and Martin Odersky
(EPFL, Switzerland; University of Waterloo, Canada)
Article: oopsla16main-main7-p doi:
Type Inference for Static Compilation of JavaScript
Satish Chandra, Colin S. Gordon, Jean-Baptiste Jeannin, Cole Schlesinger, Manu Sridharan, Frank Tip, and Youngil Choi
(Samsung Research, USA; Drexel University, USA; Northeastern University, USA; Samsung Electronics, South Korea)
Article: oopsla16main-main105-p doi:

Concurrency Analysis and Model Checking

Directed Synthesis of Failing Concurrent Executions
Malavika Samak, Omer Tripp, and Murali Krishna Ramanathan
(IISc Bangalore, India; Google, USA)
Article: oopsla16main-main207-p doi:
Maximal Causality Reduction for TSO and PSO
Shiyou Huang and Jeff Huang
(Texas A&M University, USA)
Article: oopsla16main-main128-p doi:
Precise and Maximal Race Detection from Incomplete Traces
Jeff Huang and Arun K. Rajagopalan
(Texas A&M University, USA)
Article: oopsla16main-main126-p doi:
Stateless Model Checking with Data-Race Preemption Points
Ben Blum and Garth Gibson
(Carnegie Mellon University, USA)
Article: oopsla16main-main177-p doi:

Language Design and Programming Models II

Automatic Enforcement of Expressive Security Policies using Enclaves
Anitha Gollamudi and Stephen Chong
(Harvard University, USA)
Article: oopsla16main-main54-p doi:
Chain: Tasks and Channels for Reliable Intermittent Programs
Alexei Colin and Brandon Lucia
(Carnegie Mellon University, USA)
Article: oopsla16main-main28-p doi:
GEMs: Shared-Memory Parallel Programming for Node.js
Daniele Bonetta, Luca Salucci, Stefan Marr, and Walter Binder
(Oracle Labs, Austria; University of Lugano, Switzerland; JKU Linz, Austria)
Article: oopsla16main-main194-p doi:
OrcO: A Concurrency-First Approach to Objects
Arthur Michener Peters, David Kitchin, John A. Thywissen, and William R. Cook
(University of Texas at Austin, USA; Google, USA)
Article: oopsla16main-main123-p doi:

Principles, Across the Compilation Stack

Semantic Subtyping for Imperative Object-Oriented Languages
Davide Ancona and Andrea Corradi
(University of Genoa, Italy)
Article: oopsla16main-main15-p doi:
Parsing with First-Class Derivatives
Jonathan Immanuel Brachthäuser, Tillmann Rendel, and Klaus Ostermann
(University of Tübingen, Germany)
Article: oopsla16main-main138-p doi:
The Missing Link: Explaining ELF Static Linking, Semantically
Stephen Kell, Dominic P. Mulligan, and Peter Sewell
(University of Cambridge, UK)
Article: oopsla16main-main37-p doi:
Type Soundness for Dependent Object Types (DOT)
Tiark Rompf and Nada Amin
(Purdue University, USA; EPFL, Switzerland)
Article: oopsla16main-main64-p doi:

Runtime Support

Efficient and Thread-Safe Objects for Dynamically-Typed Languages
Benoit Daloze, Stefan Marr, Daniele Bonetta, and Hanspeter Mössenböck
(JKU Linz, Austria; Oracle Labs, Austria)
Article: oopsla16main-main52-p doi:
Hybrid STM/HTM for Nested Transactions on OpenJDK
Keith Chapman, Antony L. Hosking, and J. Eliot B. Moss
(Purdue University, USA; Australian National University, Australia; Data61, Australia; University of Massachusetts at Amherst, USA)
Article: oopsla16main-main146-p doi:
Makalu: Fast Recoverable Allocation of Non-volatile Memory
Kumud Bhandari, Dhruva R. Chakrabarti, and Hans-J. Boehm
(Rice University, USA; Hewlett Packard Labs, USA; Google, USA)
Article: oopsla16main-main116-p doi:
Prioritized Garbage Collection: Explicit GC Support for Software Caches
Diogenes Nunez, Samuel Z. Guyer, and Emery D. Berger
(Tufts University, USA; University of Massachusetts at Amherst, USA)
Article: oopsla16main-main141-p doi:

Program Modeling and Learning

Computing Repair Alternatives for Malformed Programs using Constraint Attribute Grammars
Friedrich Steimann, Jörg Hagemann, and Bastian Ulke
(Fernuniversität in Hagen, Germany)
Article: oopsla16main-main63-p doi:
Probabilistic Model for Code with Decision Trees
Veselin Raychev, Pavol Bielik, and Martin Vechev
(ETH Zurich, Switzerland)
Article: oopsla16main-main208-p doi:
Ringer: Web Automation by Demonstration
Shaon Barman, Sarah Chasins, Rastislav Bodik, and Sumit Gulwani
(University of California at Berkeley, USA; University of Washington, USA; Microsoft Research, USA)
Article: oopsla16main-main118-p doi:
Scalable Verification of Border Gateway Protocol Configurations with an SMT Solver
Konstantin Weitz, Doug Woos, Emina Torlak, Michael D. Ernst, Arvind Krishnamurthy, and Zachary Tatlock
(University of Washington, USA)
Article: oopsla16main-main72-p doi:

Typing, in Practice

A Practical Framework for Type Inference Error Explanation
Calvin Loncaric, Satish Chandra, Cole Schlesinger, and Manu Sridharan
(University of Washington, USA; Samsung Research, USA)
Article: oopsla16main-main23-p doi:
Dynamically Diagnosing Type Errors in Unsafe Code
Stephen Kell
(University of Cambridge, UK)
Article: oopsla16main-main41-p doi:
First-Class Effect Reflection for Effect-Guided Programming
Yuheng Long, Yu David Liu, and Hridesh Rajan
(Iowa State University, USA; SUNY Binghamton, USA)
Article: oopsla16main-main180-p doi:
Java and Scala's Type Systems are Unsound: The Existential Crisis of Null Pointers
Nada Amin and Ross Tate
(EPFL, Switzerland; Cornell University, USA)
Article: oopsla16main-main58-p doi:

Bug Detection Analysis and Model Checking

Finding Compiler Bugs via Live Code Mutation
Chengnian Sun, Vu Le, and Zhendong Su
(University of California at Davis, USA)
Article: oopsla16main-main182-p doi:
Finding Resume and Restart Errors in Android Applications
Zhiyong Shan, Tanzirul Azim, and Iulian Neamtiu
(University of Central Missouri, USA; University of California at Riverside, USA; New Jersey Institute of Technology, USA)
Article: oopsla16main-main71-p doi:
Low-Overhead and Fully Automated Statistical Debugging with Abstraction Refinement
Zhiqiang Zuo, Lu Fang, Siau-Cheng Khoo, Guoqing Xu, and Shan Lu
(University of California at Irvine, USA; National University of Singapore, Singapore; University of Chicago, USA)
Article: oopsla16main-main60-p doi:
To Be Precise: Regression Aware Debugging
Rohan Bavishi, Awanish Pandey, and Subhajit Roy
(IIT Kanpur, India)
Article: oopsla16main-main89-p doi:

proc time: 0.74