Go home now Header Background Image
Submission Procedure
share: |
Follow us
Volume 11 / Issue 7

available in:   PDF (183 kB) PS (167 kB)
Similar Docs BibTeX   Write a comment
Links into Future
DOI:   10.3217/jucs-011-07-1198


A Formal Semantics for Finalizers

Marcus Amorim Leal (PUC-Rio, Brazil)

Roberto Ierusalimschy (PUC-Rio, Brazil)

Abstract: Automatic finalization is a common but inherently complex language facility that makes the garbage collection process semantically visible to client programs. With finalizers, memory management becomes more flexible, and garbage collectors can be used to recycle other resources in addition to memory.

Formal language models usually ignore garbage collection, and therefore are unable to properly describe finalization. In this paper we use an operational approach to develop a new abstract model that explicitly represents memory management actions in a garbage­collected programming language based on the λ­calculus. We formally state and prove several important properties related to memory management, and employ the model to describe and explore a semantics for finalizers.

Keywords: finalization, garbage collection, memory management, semantics

Categories: D.3.3, D.4.2, F.3.2