


default search action
PLDI 2017: Barcelona, Spain
- Albert Cohen, Martin T. Vechev:

Proceedings of the 38th ACM SIGPLAN Conference on Programming Language Design and Implementation, PLDI 2017, Barcelona, Spain, June 18-23, 2017. ACM 2017, ISBN 978-1-4503-4988-8
Compiler Optimizations
- Jonathan Lifflander

, Sriram Krishnamoorthy
:
Cache locality optimization for recursive programs. 1-16 - Olli Saarikivi, Margus Veanes, Todd Mytkowicz, Madan Musuvathi:

Fusing effectful comprehensions. 17-32 - Yufei Ding, Lin Ning

, Hui Guan, Xipeng Shen
:
Generalizations of the theory and deployment of triangular inequality for compiler-based strength reduction. 33-48 - David Menendez, Santosh Nagarakatte

:
Alive-Infer: data-driven precondition inference for peephole optimizations in LLVM. 49-63
Learning and Probabilistic
- Kuat Yessenov, Ivan Kuraj, Armando Solar-Lezama

:
DemoMatch: API discovery from demonstrations. 64-78 - Yaniv David

, Nimrod Partush, Eran Yahav:
Similarity of binaries through re-optimization. 79-94 - Osbert Bastani, Rahul Sharma, Alex Aiken

, Percy Liang:
Synthesizing program input grammars. 95-110 - Daniel Huang, Jean-Baptiste Tristan, Greg Morrisett:

Compiling Markov chain Monte Carlo algorithms for probabilistic modeling. 111-125
Concurrency Analysis
- Ariel Eizenberg, Yuanfeng Peng, Toma Pigli, William Mansky, Joseph Devietti

:
BARRACUDA: binary-level analysis of runtime RAces in CUDA programs. 126-140 - Dustin Rhodes, Cormac Flanagan, Stephen N. Freund

:
BigFoot: static check placement for dynamic race detection. 141-156 - Dileep Kini, Umang Mathur

, Mahesh Viswanathan:
Dynamic race prediction in linear time. 157-170 - Marina Billes, Anders Møller

, Michael Pradel:
Systematic black-box analysis of collaborative web applications. 171-184
Language Implementation
- Andreas Haas, Andreas Rossberg, Derek L. Schuff, Ben L. Titzer, Michael Holman, Dan Gohman, Luke Wagner, Alon Zakai, J. F. Bastien:

Bringing the web up to speed with WebAssembly. 185-200 - Dmitry Petrashko, Ondrej Lhoták, Martin Odersky:

Miniphases: compilation using modular and efficient tree transformations. 201-216 - Anthony Canino, Yu David Liu:

Proactive and adaptive energy-aware programming with mixed typechecking. 217-232 - Piyus Kedia, Manuel Costa, Matthew J. Parkinson, Kapil Vaswani, Dimitrios Vytiniotis, Aaron Blankstein:

Simple, fast, and safe manual memory management. 233-247
Static Analysis
- Zachary Kincaid

, Jason Breck, Ashkan Forouhi Boroujeni, Thomas W. Reps:
Compositional recurrence analysis revisited. 248-262 - Rei Thiessen, Ondrej Lhoták:

Context transformations for pointer analysis. 263-277 - Tian Tan, Yue Li, Jingling Xue

:
Efficient and precise points-to analysis: modeling the heap by merging equivalent automata. 278-291 - Anirudh Santhiar, Aditya Kanade:

Static deadlock detection for asynchronous C# programs. 292-305
Dynamic Analysis and Testing
- Zhoulai Fu, Zhendong Su

:
Achieving high coverage for floating-point code via unconstrained programming. 306-319 - Buddhika Chamith, Bo Joel Svensson, Luke Dalessandro, Ryan R. Newton:

Instruction punning: lightweight instrumentation for x86-64. 320-332 - Amanieu D'Antras, Cosmin Gorgovan, Jim D. Garside

, Mikel Luján:
Low overhead dynamic binary translation on ARM. 333-346 - Qirun Zhang

, Chengnian Sun, Zhendong Su
:
Skeletal program enumeration for rigorous compiler testing. 347-361
Static Analysis and Security
- Timos Antonopoulos, Paul Gazzillo

, Michael Hicks, Eric Koskinen, Tachio Terauchi
, Shiyi Wei:
Decomposition instead of self-composition for proving the absence of timing channels. 362-375 - Qinheping Hu, Loris D'Antoni:

Automatic program inversion using symbolic transducers. 376-389 - Peter Ohmann, Alexander Brooks, Loris D'Antoni, Ben Liblit

:
Control-flow recovery from partial failure reports. 390-405 - Goran Doychev, Boris Köpf:

Rigorous analysis of software countermeasures against cache attacks. 406-421
Synthesis
- Yu Feng, Ruben Martins, Jacob Van Geffen, Isil Dillig, Swarat Chaudhuri:

Component-based synthesis of table consolidation and transformation tasks from examples. 422-436 - Ryan Beckett, Ratul Mahajan, Todd D. Millstein, Jitendra Padhye, David Walker

:
Network configuration synthesis with abstract topologies. 437-451 - Chenglong Wang, Alvin Cheung

, Rastislav Bodík:
Synthesizing highly expressive SQL queries from input-output examples. 452-466 - James Bornholt, Emina Torlak:

Synthesizing memory models from framework sketches and Litmus tests. 467-481
Functional Programming and Correctness
- Luke Maurer, Paul Downen

, Zena M. Ariola, Simon L. Peyton Jones:
Compiling without continuations. 482-494 - Daniel Patterson, Jamie Perconti, Christos Dimoulas

, Amal Ahmed
:
FunTAL: reasonably mixing a functional language with assembly. 495-509 - Shumo Chu, Konstantin Weitz, Alvin Cheung

, Dan Suciu
:
HoTTSQL: proving query rewrites with univalent SQL semantics. 510-524 - Richard A. Eisenberg

, Simon Peyton Jones:
Levity polymorphism. 525-539
Parallelization and Concurrency
- Azadeh Farzan, Victor Nicolet

:
Synthesis of divide and conquer parallelism for loops. 540-555 - Troels Henriksen, Niels G. W. Serup, Martin Elsman

, Fritz Henglein, Cosmin E. Oancea
:
Futhark: purely functional GPU-programming with nested parallelism and in-place array updates. 556-571 - Grigory Fedyukovich

, Maaz Bin Safeer Ahmad
, Rastislav Bodík:
Gradual synthesis for static parallelization of single-pass array-processing programs. 572-585
Verified Computation
- Timothy Bourke, Lélio Brun, Pierre-Évariste Dagand, Xavier Leroy, Marc Pouzet, Lionel Rieg:

A formally verified compiler for Lustre. 586-601 - Parosh Aziz Abdulla, Mohamed Faouzi Atig, Yu-Fang Chen

, Bui Phi Diep, Lukás Holík
, Ahmed Rezine, Philipp Rümmer:
Flatten and conquer: a framework for efficient analysis of string constraints. 602-617
Correctness
- Ori Lahav

, Viktor Vafeiadis
, Jeehoon Kang
, Chung-Kil Hur, Derek Dreyer:
Repairing sequential consistency in C/C++11. 618-632 - Juneyoung Lee, Yoonseung Kim

, Youngju Song
, Chung-Kil Hur, Sanjoy Das, David Majnemer, John Regehr, Nuno P. Lopes
:
Taming undefined behavior in LLVM. 633-647
Systems and Performance
- Scott Schneider, Kun-Lung Wu:

Low-synchronization, mostly lock-free, elastic scheduling for streaming runtimes. 648-661 - Thomas Würthinger, Christian Wimmer, Christian Humer, Andreas Wöß, Lukas Stadler, Chris Seaton, Gilles Duboscq, Doug Simon, Matthias Grimmer:

Practical partial evaluation for high-performance dynamic language runtimes. 662-676 - Stefan K. Muller, Umut A. Acar, Robert Harper:

Responsive parallel computation: bridging competitive and cooperative threading. 677-692 - Konstantinos Mamouras

, Mukund Raghothaman
, Rajeev Alur, Zachary G. Ives
, Sanjeev Khanna:
StreamQRE: modular specification and efficient evaluation of quantitative queries over streaming data. 693-708

manage site settings
To protect your privacy, all features that rely on external API calls from your browser are turned off by default. You need to opt-in for them to become active. All settings here will be stored as cookies with your web browser. For more information see our F.A.Q.


Google
Google Scholar
Semantic Scholar
Internet Archive Scholar
CiteSeerX
ORCID














