Links und Funktionen

You are here: Home / Publikationen / Type-Based Amortised Heap-Space Analysis


Martin Hofmann and Steffen Jost (2006)

Type-Based Amortised Heap-Space Analysis

In: Programming Languages and Systems, 15th European Symposium on Programming, ESOP 2006, Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2006, Vienna, Austria, March 27-28, 2006, Proceedings, ed. by Peter Sestoft, vol. 3924, pp. 22-37, Springer. Lecture Notes in Computer Science (ISBN: 3-540-33095-X).

We present a type system for a compile-time analysis of heap-space requirements of Java style object-oriented programs with explicit deallocation. Our system is based on an amortised$~$ complexity analysis: the data is arbitrarily assigned a potential related to its size and layout; allocations must be “payed for” from this potential. The potential of each input then furnishes an$~$ upper bound on the heap space usage for the computation on this input. We successfully treat inheritance, downcast, update and aliasing. Example applications for the analysis include destination-passing style and doubly-linked lists. Type inference is explicitly$~$ not included; the contribution lies in the system itself and the nontrivial soundness theorem. This extended abstract elides most technical lemmas and proofs, even nontrivial ones, due to space limitations. A full version is available at the authorsʼ web pages.

Document Actions