OOPSLA 2015- Proceedings of the 2015 ACM SIGPLAN International Conference on Object-Oriented Programming, Systems, Languages, and Applications
Full Citation in the ACM Digital Library
SESSION: Model Checking
Detecting redundant CSS rules in HTML5 applications: a tree rewriting approach
Matthew Hague
Anthony W. Lin
C.-H. Luke Ong
SATCheck: SAT-directed stateless model checking for SC and TSO
Brian Demsky
Patrick Lam
Programming with enumerable sets of structures
Ivan Kuraj
Viktor Kuncak
Daniel Jackson
Stateless model checking of event-driven applications
Casper S. Jensen
Anders Møller
Veselin Raychev
Dimitar Dimitrov
Martin Vechev
SESSION: Domain Specific Languages
Synthesis of layout engines from relational constraints
Thibaud Hottelier
Rastislav Bodik
A sound and optimal incremental build system with dynamic dependencies
Sebastian Erdweg
Moritz Lichter
Manuel Weiel
FlashMeta: a framework for inductive program synthesis
Oleksandr Polozov
Sumit Gulwani
Scrap your boilerplate with object algebras
Haoyuan Zhang
Zewei Chu
Bruno C. d. S. Oliveira
Tijs van der Storm
SESSION: Verification
Conditionally correct superoptimization
Rahul Sharma
Eric Schkufza
Berkeley Churchill
Alex Aiken
Selective control-flow abstraction via jumping
Sam Blackshear
Bor-Yuh Evan Chang
Manu Sridharan
Automating grammar comparison
Ravichandhran Madhavan
Mikaël Mayer
Sumit Gulwani
Viktor Kuncak
Reasoning about the POSIX file system: local update and global pathnames
Gian Ntzik
Philippa Gardner
SESSION: Concurrency
AutoMO: automatic inference of memory order parameters for C/C++11
Peizhao Ou
Brian Demsky
Valor: efficient, software-only region conflict exceptions
Swarnendu Biswas
Minjia Zhang
Michael D. Bond
Brandon Lucia
Automatic memory reclamation for lock-free data structures
Nachshon Cohen
Erez Petrank
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
Nobuko Yoshida
SESSION: Mobility
Interactively verifying absence of explicit information flows in Android apps
Osbert Bastani
Saswat Anand
Alex Aiken
ShamDroid: gracefully degrading functionality in the presence of limited resource access
Lucas Brutschy
Pietro Ferrara
Omer Tripp
Marco Pistoia
Scalable race detection for Android applications
Pavol Bielik
Veselin Raychev
Martin Vechev
Versatile yet lightweight record-and-replay for Android
Yongjian Hu
Tanzirul Azim
Iulian Neamtiu
SESSION: Compilation and Tools
Declarative fence insertion
John Bender
Mohsen Lesani
Jens Palsberg
Finding deep compiler bugs via guided stochastic program mutation
Vu Le
Chengnian Sun
Zhendong Su
Vectorization of apply to reduce interpretation overhead of R
Haichuan Wang
David Padua
Peng Wu
Synthesizing Java expressions from free-form queries
Tihomir Gvero
Viktor Kuncak
SESSION: Runtime
Accurate profiling in the presence of dynamic compilation
Yudi Zheng
Lubomír Bulej
Walter Binder
Fast, multicore-scalable, low-fragmentation memory allocation through large virtual memory and global data structures
Martin Aigner
Christoph M. Kirsch
Michael Lippautz
Ana Sokolova
Probability type inference for flexible approximate programming
Brett Boston
Adrian Sampson
Dan Grossman
Luis Ceze
Cross-layer memory management for managed language applications
Michael R. Jantz
Forrest J. Robinson
Prasad A. Kulkarni
Kshitij A. Doshi
SESSION: Static Analysis
Static analysis of event-driven Node.js JavaScript applications
Magnus Madsen
Frank Tip
Ondřej Lhoták
EXPLORER : query- and demand-driven exploration of interprocedural control flow properties
Yu Feng
Xinyu Wang
Isil Dillig
Calvin Lin
Giga-scale exhaustive points-to analysis for Java in under a minute
Jens Dietrich
Nicholas Hollingum
Bernhard Scholz
Galois transformers and modular abstract interpreters: reusable metatheory for program analysis
David Darais
Matthew Might
David Van Horn
Learning a strategy for adapting a program analysis via bayesian optimisation
Hakjoo Oh
Hongseok Yang
Kwangkeun Yi
SESSION: Compilation and Dynamic Analysis
Runtime pointer disambiguation
Péricles Alves
Fabian Gruber
Johannes Doerfert
Alexandros Lamprineas
Tobias Grosser
Fabrice Rastello
Fernando Magno Quintão Pereira
Performance problems you can fix: a dynamic analysis of memoization opportunities
Luca Della Toffola
Michael Pradel
Thomas R. Gross
RAIVE: runtime assessment of floating-point instability by vectorization
Wen-Chuan Lee
Tao Bao
Yunhui Zheng
Xiangyu Zhang
Keval Vora
Rajiv Gupta
Automated backward error analysis for numerical code
Zhoulai Fu
Zhaojun Bai
Zhendong Su
SESSION: Empirical Studies and Approximation
Using C language extensions for developing embedded software: a case study
Markus Voelter
Arie van Deursen
Bernd Kolb
Stephan Eberle
How scale affects structure in Java programs
Cristina V. Lopes
Joel Ossher
Use at your own risk: the Java unsafe API in the wild
Luis Mastrangelo
Luca Ponzanelli
Andrea Mocci
Michele Lanza
Matthias Hauswirth
Nathaniel Nystrom
Approximate computation with outlier detection in Topaz
Sara Achour
Martin C. Rinard
SESSION: Programming Language Design
Remote-scope promotion: clarified, rectified, and verified
John Wickerson
Mark Batty
Bradford M. Beckmann
Alastair F. Donaldson
Incremental computation with names
Matthew A. Hammer
Joshua Dunfield
Kyle Headley
Nicholas Labich
Jeffrey S. Foster
Michael Hicks
David Van Horn
Checks and balances: constraint solving without surprises in object-constraint programming languages
Tim Felgentreff
Todd Millstein
Alan Borning
Robert Hirschfeld
Optimizing hash-array mapped tries for fast and lean immutable JVM collections
Michael J. Steindorfer
Jurgen J. Vinju
SESSION: Performance
Automating ad hoc data representation transformations
Vlad Ureche
Aggelos Biboudis
Yannis Smaragdakis
Martin Odersky
Tracing vs. partial evaluation: comparing meta-compilation approaches for self-optimizing interpreters
Stefan Marr
Stéphane Ducasse
Effectively mapping linguistic abstractions for message-passing concurrency to threads on the Java virtual machine
Ganesha Upadhyaya
Hridesh Rajan
Partial evaluation of machine code
Venkatesh Srinivasan
Thomas Reps
SESSION: 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
Mira Mezini
Disjointness domains for fine-grained aliasing
Stephan Brandauer
Dave Clarke
Tobias Wrigstad
The chemical approach to typestate-oriented programming
Silvia Crafa
Luca Padovani
Customizable gradual polymorphic effects for Scala
Matías Toro
Éric Tanter