kirancodes.me
To Proof Maintenance & Beyond!

Transformational Derivation of a Garbage Collection Algorithm

Robert B. K. Dewar, Micha Sharir, Elia Weixelbaum

Abstract

Transformational programming is a relatively new programming technique intended to derive complex algorithms automatically.Initially, a set of transformational rules is described, and an initial specification of the problem to be programmed is given.The specification is written in a high-level language in a fairly compact form possibly ignoring efficiency.A number of versions, called transformations, are created by successively applying the transformational rules starting with the initial specification.As an example of the application of this technique to a fairly complex case, a transformational derivation of a variant of a known efficient garbage collection and compaction algorithm from an initial very high-level specification is given.Currently, the techniques are still being developed, and therefore the transformations are derived manually.However, most of the transformations done are of a technical nature and could eventually be automated.

Related papers