Programming Languages and Systems (TOPLAS)


Search Issue
enter search term and/or author name


ACM Transactions on Programming Languages and Systems (TOPLAS), Volume 29 Issue 2, April 2007

Slicing as a program transformation
Martin Ward, Hussein Zedan
Article No.: 7
DOI: 10.1145/1216374.1216375

The aim of this article is to provide a unified mathematical framework for program slicing which places all slicing work for sequential programs on a sound theoretical foundation. The main advantage to a mathematical approach is that it is not...

A deterministic logical semantics for pure Esterel
Olivier Tardieu
Article No.: 8
DOI: 10.1145/1216374.1216376

Esterel is a synchronous design language for the specification of reactive systems. There exist two main semantics for Esterel. On the one hand, the logical behavioral semantics provides a simple and compact formalization of the behavior of...

Allocating architected registers through differential encoding
Xiaotong Zhuang, Santosh Pande
Article No.: 9
DOI: 10.1145/1216374.1216377

Micro-architecture designers are very cautious about expanding the number of architected and exposed registers in the instruction set because increasing the register field adds to the code size, raises the I-cache and memory pressure, and may...

Termination analysis of logic programs through combination of type-based norms
Maurice Bruynooghe, Michael Codish, John P. Gallagher, Samir Genaim, Wim Vanhoof
Article No.: 10
DOI: 10.1145/1216374.1216378

This article makes two contributions to the work on semantics-based termination analysis for logic programs. The first involves a novel notion of type-based norm where for a given type, a corresponding norm is defined to count in a...

Fast online pointer analysis
Martin Hirzel, Daniel Von Dincklage, Amer Diwan, Michael Hind
Article No.: 11
DOI: 10.1145/1216374.1216379

Pointer analysis benefits many useful clients, such as compiler optimizations and bug finding tools. Unfortunately, common programming language features such as dynamic loading, reflection, and foreign language interfaces, make pointer analysis...

METRIC: Memory tracing via dynamic binary rewriting to identify cache inefficiencies
Jaydeep Marathe, Frank Mueller, Tushar Mohan, Sally A. Mckee, Bronis R. De Supinski, Andy Yoo
Article No.: 12
DOI: 10.1145/1216374.1216380

With the diverging improvements in CPU speeds and memory access latencies, detecting and removing memory access bottlenecks becomes increasingly important. In this work we present METRIC, a software framework for isolating and understanding such...

A provenly correct translation of Fickle into Java
D. Ancona, C. Anderson, F. Damiani, S. Drossopoulou, P. Giannini, E. Zucca
Article No.: 13
DOI: 10.1145/1216374.1216381

We present a translation from Fickle, a small object-oriented language allowing objects to change their class at runtime, into Java. The translation is provenly correct in the sense that it preserves the static and dynamic semantics....