Albert Cohen 0001, Martin T. Vechev
Proceedings of the 38th Conference on Programming Language Design and Implementation
PLDI, 2017.
@proceedings{PLDI-2017,
doi = "10.1145/3062341",
editor = "Albert Cohen 0001 and Martin T. Vechev",
isbn = "978-1-4503-4988-8",
publisher = "{ACM}",
title = "{Proceedings of the 38th Conference on Programming Language Design and Implementation}",
year = 2017,
}
Contents (47 items)
- PLDI-2017-LifflanderK #locality #optimisation #recursion #source code
- Cache locality optimization for recursive programs (JL, SK), pp. 1–16.
- PLDI-2017-SaarikiviVMM
- Fusing effectful comprehensions (OS, MV, TM, MM), pp. 17–32.
- PLDI-2017-DingNGS #deployment #difference #reduction
- Generalizations of the theory and deployment of triangular inequality for compiler-based strength reduction (YD, LN, HG, XS), pp. 33–48.
- PLDI-2017-MenendezN #data-driven #named #optimisation
- Alive-Infer: data-driven precondition inference for peephole optimizations in LLVM (DM, SN), pp. 49–63.
- PLDI-2017-YessenovKS #api #named
- DemoMatch: API discovery from demonstrations (KY, IK, ASL), pp. 64–78.
- PLDI-2017-DavidPY #similarity
- Similarity of binaries through re-optimization (YD, NP, EY), pp. 79–94.
- PLDI-2017-Bastani0AL
- Synthesizing program input grammars (OB, RS0, AA, PL), pp. 95–110.
- PLDI-2017-HuangTM #algorithm #compilation #markov #modelling #monte carlo #probability
- Compiling Markov chain Monte Carlo algorithms for probabilistic modeling (DH0, JBT, GM), pp. 111–125.
- PLDI-2017-EizenbergPPMD #analysis #named #runtime #source code
- BARRACUDA: binary-level analysis of runtime RAces in CUDA programs (AE, YP, TP, WM, JD), pp. 126–140.
- PLDI-2017-RhodesFF #concurrent #detection #named #static analysis
- BigFoot: static check placement for dynamic race detection (DR, CF, SNF), pp. 141–156.
- PLDI-2017-KiniM0 #linear #predict
- Dynamic race prediction in linear time (DK, UM, MV0), pp. 157–170.
- PLDI-2017-BillesMP #analysis #black box #collaboration #web
- Systematic black-box analysis of collaborative web applications (MB, AM, MP), pp. 171–184.
- PLDI-2017-HaasRSTHGWZB #web
- Bringing the web up to speed with WebAssembly (AH, AR, DLS, BLT, MH, DG, LW, AZ, JFB), pp. 185–200.
- PLDI-2017-PetrashkoLO #compilation #composition #named #performance #program transformation #using
- Miniphases: compilation using modular and efficient tree transformations (DP, OL, MO), pp. 201–216.
- PLDI-2017-CaninoL #adaptation #energy #programming
- Proactive and adaptive energy-aware programming with mixed typechecking (AC, YDL), pp. 217–232.
- PLDI-2017-KediaCPVVB #memory management #performance
- Simple, fast, and safe manual memory management (PK, MC, MJP, KV, DV, AB), pp. 233–247.
- PLDI-2017-KincaidBBR #analysis #composition #revisited
- Compositional recurrence analysis revisited (ZK, JB, AFB, TWR), pp. 248–262.
- PLDI-2017-ThiessenL #analysis #pointer
- Context transformations for pointer analysis (RT, OL), pp. 263–277.
- PLDI-2017-TanLX #analysis #automaton #modelling #performance #points-to #precise
- Efficient and precise points-to analysis: modeling the heap by merging equivalent automata (TT0, YL0, JX), pp. 278–291.
- PLDI-2017-SanthiarK #c# #concurrent #detection #source code
- Static deadlock detection for asynchronous C# programs (AS, AK), pp. 292–305.
- PLDI-2017-FuS #float #programming
- Achieving high coverage for floating-point code via unconstrained programming (ZF, ZS), pp. 306–319.
- PLDI-2017-ChamithSDN #lightweight
- Instruction punning: lightweight instrumentation for x86-64 (BC, BJS, LD, RRN), pp. 320–332.
- PLDI-2017-DAntrasGGL
- Low overhead dynamic binary translation on ARM (AD, CG, JDG, ML), pp. 333–346.
- PLDI-2017-ZhangSS #compilation #testing
- Skeletal program enumeration for rigorous compiler testing (QZ, CS, ZS), pp. 347–361.
- PLDI-2017-AntonopoulosGHK #composition #proving #self
- Decomposition instead of self-composition for proving the absence of timing channels (TA, PG, MH0, EK, TT, SW), pp. 362–375.
- PLDI-2017-HuD #automation #transducer #using
- Automatic program inversion using symbolic transducers (QH, LD), pp. 376–389.
- PLDI-2017-OhmannBDL #control flow
- Control-flow recovery from partial failure reports (PO, AB, LD, BL), pp. 390–405.
- PLDI-2017-DoychevK #analysis
- Rigorous analysis of software countermeasures against cache attacks (GD, BK), pp. 406–421.
- PLDI-2017-FengMGDC #component #synthesis
- Component-based synthesis of table consolidation and transformation tasks from examples (YF, RM, JVG, ID, SC), pp. 422–436.
- PLDI-2017-BeckettMMPW #network #synthesis
- Network configuration synthesis with abstract topologies (RB, RM, TDM, JP, DW), pp. 437–451.
- PLDI-2017-WangCB #query #sql
- Synthesizing highly expressive SQL queries from input-output examples (CW, AC, RB), pp. 452–466.
- PLDI-2017-BornholtT #framework #memory management #modelling #sketching #testing
- Synthesizing memory models from framework sketches and Litmus tests (JB, ET), pp. 467–481.
- PLDI-2017-MaurerDAJ #compilation #continuation
- Compiling without continuations (LM, PD, ZMA, SLPJ), pp. 482–494.
- PLDI-2017-PattersonPDA #assembly #functional #named
- FunTAL: reasonably mixing a functional language with assembly (DP0, JP, CD, AA), pp. 495–509.
- PLDI-2017-ChuWCS #named #proving #query #semantics #sql
- HoTTSQL: proving query rewrites with univalent SQL semantics (SC, KW, AC, DS), pp. 510–524.
- PLDI-2017-EisenbergJ #morphism #polymorphism
- Levity polymorphism (RAE, SPJ), pp. 525–539.
- PLDI-2017-FarzanN #divide and conquer #parallel #synthesis
- Synthesis of divide and conquer parallelism for loops (AF, VN), pp. 540–555.
- PLDI-2017-HenriksenSEHO #array #functional #named #parallel
- Futhark: purely functional GPU-programming with nested parallelism and in-place array updates (TH, NGWS, ME, FH, CEO), pp. 556–571.
- PLDI-2017-FedyukovichAB #parallel #source code #synthesis
- Gradual synthesis for static parallelization of single-pass array-processing programs (GF, MBSA, RB), pp. 572–585.
- PLDI-2017-BourkeBDLPR #compilation
- A formally verified compiler for Lustre (TB, LB, PÉD, XL, MP, LR), pp. 586–601.
- PLDI-2017-AbdullaACDHRR #analysis #constraints #framework #performance #string
- Flatten and conquer: a framework for efficient analysis of string constraints (PAA, MFA, YFC, BPD, LH, AR, PR), pp. 602–617.
- PLDI-2017-LahavVKHD #consistency
- Repairing sequential consistency in C/C++11 (OL, VV, JK, CKH, DD), pp. 618–632.
- PLDI-2017-LeeKSHDMRL #behaviour
- Taming undefined behavior in LLVM (JL, YK, YS, CKH, SD, DM, JR, NPL), pp. 633–647.
- PLDI-2017-0001W #scheduling #streaming
- Low-synchronization, mostly lock-free, elastic scheduling for streaming runtimes (SS0, KLW), pp. 648–661.
- PLDI-2017-WurthingerWHWSS #partial evaluation
- Practical partial evaluation for high-performance dynamic language runtimes (TW, CW, CH, AW, LS, CS, GD, DS, MG), pp. 662–676.
- PLDI-2017-MullerA0 #parallel #thread
- Responsive parallel computation: bridging competitive and cooperative threading (SKM, UAA, RH0), pp. 677–692.
- PLDI-2017-MamourasRAIK #composition #evaluation #named #performance #query #specification #streaming
- StreamQRE: modular specification and efficient evaluation of quantitative queries over streaming data (KM, MR, RA, ZGI, SK), pp. 693–708.