Programming Languages and Systems (TOPLAS)


Search Issue
enter search term and/or author name


ACM Transactions on Programming Languages and Systems (TOPLAS), Volume 38 Issue 2, January 2016

Verifying Custom Synchronization Constructs Using Higher-Order Separation Logic
Mike Dodds, Suresh Jagannathan, Matthew J. Parkinson, Kasper Svendsen, Lars Birkedal
Article No.: 4
DOI: 10.1145/2818638

Synchronization constructs lie at the heart of any reliable concurrent program. Many such constructs are standard (e.g., locks, queues, stacks, and hash-tables). However, many concurrent applications require custom synchronization constructs with...

Compiler-Driven Software Speculation for Thread-Level Parallelism
Paraskevas Yiapanis, Gavin Brown, Mikel Luján
Article No.: 5
DOI: 10.1145/2821505

Current parallelizing compilers can tackle applications exercising regular access patterns on arrays or affine indices, where data dependencies can be expressed in a linear form. Unfortunately, there are cases that independence between statements...

Selective X-Sensitive Analysis Guided by Impact Pre-Analysis
Hakjoo Oh, Wonchan Lee, Kihong Heo, Hongseok Yang, Kwangkeun Yi
Article No.: 6
DOI: 10.1145/2821504

We present a method for selectively applying context-sensitivity during interprocedural program analysis. Our method applies context-sensitivity only when and where doing so is likely to improve the precision that matters for resolving given...

An Abstract Interpretation-Based Model of Tracing Just-in-Time Compilation
Stefano Dissegna, Francesco Logozzo, Francesco Ranzato
Article No.: 7
DOI: 10.1145/2853131

Tracing just-in-time compilation is a popular compilation technique for the efficient implementation of dynamic languages, which is commonly used for JavaScript, Python, and PHP. It relies on two key ideas. First, it monitors program execution in...