LISP and Symbolic Computation, 9(1)109-143

Strictness Analysis in the Imperative Lambda Calculus

Jonathan Springer, Department of Computer Science, University of Illinois at Urbana-Champaign, Urbana, IL 61801 USA
Samuel N. Kamin, Department of Computer Science, University of Illinois at Urbana-Champaign, Urbana, IL 61801 USA

Abstract: Concerns over efficiency and expressiveness of functional languages have motivated the study of languages that allow state and pure functionality to coexist peacefully. However, state-oriented features complicate the static analyses which are essential for efficient compilation of these languages. The problem is an interesting one because it combines traditional strictness analysis with the abstract storage structure analysis familiar from imperative languages. We apply the technique of abstract interpretation to perform strictness analysis in the Imperative Lambda Calculus of Swarup, Reddy, and Ireland. A basic analysis is presented, along with some extensions to handle certain evident weaknesses; proofs for these analyses are discussed in some detail.

Keywords: ILC, abstract interpretation, strictness analysis

This article is not available online.
[picture of journal cover]

May 2003 - hosc@brics.dk