Powered by
Conference Publishing Consulting

2015 ACM SIGPLAN International Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA 2015), October 25–30, 2015, Pittsburgh, PA, USA

OOPSLA 2015 – Proceedings

Contents - Abstracts - Authors

Frontmatter

Title Page
Article: oopsla15foreword-fm000-p doi:
Message from the Chairs
Article: oopsla15foreword-fm001-p doi:
OOPSLA 2015 Organization
Article: oopsla15foreword-fm002-p doi:

Model Checking

Detecting Redundant CSS Rules in HTML5 Applications: A Tree Rewriting Approach
Matthew Hague, Anthony W. Lin, and C.-H. Luke Ong
(University of London, UK; Yale-NUS College, Singapore; University of Oxford, UK)
Article: oopsla15main-mainoopsla15-135-p doi:
SATCheck: SAT-Directed Stateless Model Checking for SC and TSO
Brian Demsky and Patrick Lam
(University of California at Irvine, USA; University of Waterloo, Canada)
Article: oopsla15main-mainoopsla15-170-p doi:
Programming with Enumerable Sets of Structures
Ivan Kuraj, Viktor Kuncak, and Daniel Jackson
(Massachusetts Institute of Technology, USA; EPFL, Switzerland)
Article: oopsla15main-mainoopsla15-253-p doi:
Stateless Model Checking of Event-Driven Applications
Casper S. Jensen, Anders Møller, Veselin Raychev, Dimitar Dimitrov, and Martin Vechev
(Aarhus University, Denmark; ETH Zurich, Switzerland)
Article: oopsla15main-mainoopsla15-102-p doi:

Domain Specific Languages

Synthesis of Layout Engines from Relational Constraints
Thibaud Hottelier and Rastislav Bodik
(University of California at Berkeley, USA; University of Washington, USA)
Article: oopsla15main-mainoopsla15-143-p doi:
A Sound and Optimal Incremental Build System with Dynamic Dependencies
Sebastian Erdweg, Moritz Lichter, and Manuel Weiel
(TU Darmstadt, Germany)
Article: oopsla15main-mainoopsla15-229-p doi:
FlashMeta: A Framework for Inductive Program Synthesis
Oleksandr Polozov and Sumit Gulwani
(University of Washington, USA; Microsoft Research, USA)
Article: oopsla15main-mainoopsla15-210-p doi:
Scrap Your Boilerplate with Object Algebras
Haoyuan Zhang, Zewei Chu, Bruno C. d. S. Oliveira, and Tijs van der Storm
(University of Hong Kong, China; CWI, Netherlands)
Article: oopsla15main-mainoopsla15-60-p doi:

Verification

Conditionally Correct Superoptimization
Rahul Sharma, Eric Schkufza, Berkeley Churchill, and Alex Aiken
(Stanford University, USA)
Article: oopsla15main-mainoopsla15-50-p doi:
Selective Control-Flow Abstraction via Jumping
Sam Blackshear, Bor-Yuh Evan Chang, and Manu Sridharan
(University of Colorado at Boulder, USA; Samsung Research, USA)
Article: oopsla15main-mainoopsla15-153-p doi:
Automating Grammar Comparison
Ravichandhran Madhavan, Mikaël Mayer, Sumit Gulwani, and Viktor Kuncak
(EPFL, Switzerland; Microsoft Research, USA)
Article: oopsla15main-mainoopsla15-191-p doi:
Reasoning about the POSIX File System: Local Update and Global Pathnames
Gian Ntzik and Philippa Gardner
(Imperial College London, UK)
Article: oopsla15main-mainoopsla15-197-p doi:

Concurrency

AutoMO: Automatic Inference of Memory Order Parameters for C/C++11
Peizhao Ou and Brian Demsky
(University of California at Irvine, USA)
Article: oopsla15main-mainoopsla15-126-p doi:
Valor: Efficient, Software-Only Region Conflict Exceptions
Swarnendu Biswas, Minjia Zhang, Michael D. Bond, and Brandon Lucia
(Ohio State University, USA; Carnegie Mellon University, USA)
Article: oopsla15main-mainoopsla15-145-p doi:
Automatic Memory Reclamation for Lock-Free Data Structures
Nachshon Cohen and Erez Petrank
(Technion, Israel)
Article: oopsla15main-mainoopsla15-173-p doi:
Protocol-Based Verification of Message-Passing Parallel Programs
Hugo A. López, Eduardo R. B. Marques, Francisco Martins, Nicholas Ng, César Santos, Vasco Thudichum Vasconcelos, and Nobuko Yoshida
(DTU, Denmark; University of Lisbon, Portugal; Imperial College London, UK)
Article: oopsla15main-mainoopsla15-186-p doi:

Mobility

Interactively Verifying Absence of Explicit Information Flows in Android Apps
Osbert Bastani, Saswat Anand, and Alex Aiken
(Stanford University, USA)
Article: oopsla15main-mainoopsla15-24-p doi:
ShamDroid: Gracefully Degrading Functionality in the Presence of Limited Resource Access
Lucas Brutschy, Pietro Ferrara, Omer Tripp, and Marco Pistoia
(ETH Zurich, Switzerland; IBM Research, USA)
Article: oopsla15main-mainoopsla15-168-p doi:
Scalable Race Detection for Android Applications
Pavol Bielik, Veselin Raychev, and Martin Vechev
(ETH Zurich, Switzerland)
Article: oopsla15main-mainoopsla15-189-p doi:
Versatile yet Lightweight Record-and-Replay for Android
Yongjian Hu, Tanzirul Azim, and Iulian Neamtiu
(University of California at Riverside, USA)
Article: oopsla15main-mainoopsla15-245-p doi:

Compilation and Tools

Declarative Fence Insertion
John Bender, Mohsen Lesani, and Jens Palsberg
(University of California at Los Angeles, USA; Massachusetts Institute of Technology, USA)
Article: oopsla15main-mainoopsla15-231-p doi:
Finding Deep Compiler Bugs via Guided Stochastic Program Mutation
Vu Le, Chengnian Sun, and Zhendong Su
(University of California at Davis, USA)
Article: oopsla15main-mainoopsla15-236-p doi:
Vectorization of Apply to Reduce Interpretation Overhead of R
Haichuan Wang, David Padua, and Peng Wu
(University of Illinois at Urbana-Champaign, USA; Huawei Lab, USA)
Article: oopsla15main-mainoopsla15-23-p doi:
Synthesizing Java Expressions from Free-Form Queries
Tihomir Gvero and Viktor Kuncak
(EPFL, Switzerland)
Article: oopsla15main-mainoopsla15-162-p doi:

Runtime

Accurate Profiling in the Presence of Dynamic Compilation
Yudi Zheng, Lubomír Bulej, and Walter Binder
(University of Lugano, Switzerland; Charles University, Czech Republic)
Article: oopsla15main-mainoopsla15-101-p doi:
Fast, Multicore-Scalable, Low-Fragmentation Memory Allocation through Large Virtual Memory and Global Data Structures
Martin Aigner, Christoph M. Kirsch, Michael Lippautz, and Ana Sokolova
(University of Salzburg, Austria)
Article: oopsla15main-mainoopsla15-154-p doi:
Probability Type Inference for Flexible Approximate Programming
Brett Boston, Adrian Sampson, Dan Grossman, and Luis Ceze
(University of Washington, USA)
Article: oopsla15main-mainoopsla15-184-p doi:
Cross-Layer Memory Management for Managed Language Applications
Michael R. Jantz, Forrest J. Robinson, Prasad A. Kulkarni, and Kshitij A. Doshi
(University of Tennessee, USA; University of Kansas, USA; Intel, USA)
Article: oopsla15main-mainoopsla15-248-p doi:

Static Analysis

Static Analysis of Event-Driven Node.js JavaScript Applications
Magnus Madsen, Frank Tip, and Ondřej Lhoták
(University of Waterloo, Canada; Samsung Research, USA)
Article: oopsla15main-mainoopsla15-3-p doi:
EXPLORER : Query- and Demand-Driven Exploration of Interprocedural Control Flow Properties
Yu Feng, Xinyu Wang, Isil Dillig, and Calvin Lin
(University of Texas at Austin, USA)
Article: oopsla15main-mainoopsla15-108-p doi:
Giga-Scale Exhaustive Points-To Analysis for Java in Under a Minute
Jens Dietrich, Nicholas Hollingum, and Bernhard Scholz
(Massey University, New Zealand; University of Sydney, Australia; Oracle Labs, Australia)
Article: oopsla15main-mainoopsla15-203-p doi:
Galois Transformers and Modular Abstract Interpreters: Reusable Metatheory for Program Analysis
David Darais, Matthew Might, and David Van Horn
(University of Maryland at College Park, USA; University of Utah, USA)
Article: oopsla15main-mainoopsla15-204-p doi:
Learning a Strategy for Adapting a Program Analysis via Bayesian Optimisation
Hakjoo Oh, Hongseok Yang, and Kwangkeun Yi
(Korea University, South Korea; University of Oxford, UK; Seoul National University, South Korea)
Article: oopsla15main-mainoopsla15-209-p doi:

Compilation and Dynamic Analysis

Runtime Pointer Disambiguation
Péricles Alves, Fabian Gruber, Johannes Doerfert, Alexandros Lamprineas, Tobias Grosser, Fabrice Rastello, and Fernando Magno Quintão Pereira
(Federal University of Minas Gerais, Brazil; INRIA, France; Saarland University, Germany; ETH Zurich, Switzerland)
Article: oopsla15main-mainoopsla15-110-p doi:
Performance Problems You Can Fix: A Dynamic Analysis of Memoization Opportunities
Luca Della Toffola, Michael Pradel, and Thomas R. Gross
(ETH Zurich, Switzerland; TU Darmstadt, Germany)
Article: oopsla15main-mainoopsla15-142-p doi:
RAIVE: Runtime Assessment of Floating-Point Instability by Vectorization
Wen-Chuan Lee, Tao Bao, Yunhui Zheng, Xiangyu Zhang, Keval Vora, and Rajiv Gupta
(Purdue University, USA; University of California at Riverside, USA)
Article: oopsla15main-mainoopsla15-180-p doi:
Automated Backward Error Analysis for Numerical Code
Zhoulai Fu, Zhaojun Bai, and Zhendong Su
(University of California at Davis, USA)
Article: oopsla15main-mainoopsla15-230-p doi:

Empirical Studies and Approximation

Using C Language Extensions for Developing Embedded Software: A Case Study
Markus Voelter, Arie van Deursen, Bernd Kolb, and Stephan Eberle
(itemis, Germany; Delft University of Technology, Netherlands)
Article: oopsla15main-mainoopsla15-29-p doi:
How Scale Affects Structure in Java Programs
Cristina V. Lopes and Joel Ossher
(University of California at Irvine, USA)
Article: oopsla15main-mainoopsla15-183-p doi:
Use at Your Own Risk: The Java Unsafe API in the Wild
Luis Mastrangelo, Luca Ponzanelli, Andrea Mocci, Michele Lanza, Matthias Hauswirth, and Nathaniel Nystrom
(University of Lugano, Switzerland)
Article: oopsla15main-mainoopsla15-221-p doi:
Approximate Computation with Outlier Detection in Topaz
Sara Achour and Martin C. Rinard
(Massachusetts Institute of Technology, USA)
Article: oopsla15main-mainoopsla15-224-p doi:

Programming Language Design

Remote-Scope Promotion: Clarified, Rectified, and Verified
John Wickerson, Mark Batty, Bradford M. Beckmann, and Alastair F. Donaldson
(Imperial College London, UK; University of Kent, UK; AMD, USA)
Article: oopsla15main-mainoopsla15-103-p doi:
Incremental Computation with Names
Matthew A. Hammer, Joshua Dunfield, Kyle Headley, Nicholas Labich, Jeffrey S. Foster, Michael Hicks, and David Van Horn
(University of Colorado at Boulder, USA; University of Maryland at College Park, USA; University of British Columbia, Canada)
Article: oopsla15main-mainoopsla15-193-p doi:
Checks and Balances: Constraint Solving without Surprises in Object-Constraint Programming Languages
Tim Felgentreff, Todd Millstein, Alan Borning, and Robert Hirschfeld
(HPI, Germany; University of California at Los Angeles, USA; University of Washington, USA)
Article: oopsla15main-mainoopsla15-211-p doi:
Optimizing Hash-Array Mapped Tries for Fast and Lean Immutable JVM Collections
Michael J. Steindorfer and Jurgen J. Vinju
(CWI, Netherlands)
Article: oopsla15main-mainoopsla15-215-p doi:

Performance

Automating Ad hoc Data Representation Transformations
Vlad Ureche, Aggelos Biboudis, Yannis Smaragdakis, and Martin Odersky
(EPFL, Switzerland; University of Athens, Greece)
Article: oopsla15main-mainoopsla15-2-p doi:
Tracing vs. Partial Evaluation: Comparing Meta-Compilation Approaches for Self-Optimizing Interpreters
Stefan Marr and Stéphane Ducasse
(INRIA, France)
Article: oopsla15main-mainoopsla15-26-p doi:
Effectively Mapping Linguistic Abstractions for Message-Passing Concurrency to Threads on the Java Virtual Machine
Ganesha Upadhyaya and Hridesh Rajan
(Iowa State University, USA)
Article: oopsla15main-mainoopsla15-136-p doi:
Partial Evaluation of Machine Code
Venkatesh Srinivasan and Thomas Reps
(University of Wisconsin-Madison, USA; GrammaTech, USA)
Article: oopsla15main-mainoopsla15-246-p doi:

Type Systems

A Co-contextual Formulation of Type Rules and Its Application to Incremental Type Checking
Sebastian Erdweg, Oliver Bračevac, Edlira Kuci, Matthias Krebs, and Mira Mezini
(TU Darmstadt, Germany; Lancaster University, UK)
Article: oopsla15main-mainoopsla15-40-p doi:
Disjointness Domains for Fine-Grained Aliasing
Stephan Brandauer, Dave Clarke, and Tobias Wrigstad
(Uppsala University, Sweden)
Article: oopsla15main-mainoopsla15-75-p doi:
The Chemical Approach to Typestate-Oriented Programming
Silvia Crafa and Luca Padovani
(Università di Padova, Italy; Università di Torino, Italy)
Article: oopsla15main-mainoopsla15-127-p doi:
Customizable Gradual Polymorphic Effects for Scala
Matías Toro and Éric Tanter
(University of Chile, Chile)
Article: oopsla15main-mainoopsla15-225-p doi:

proc time: 0.7