Distributed Garbage Collection of Cyclic Structures

One of the key features of modern high level programming languages is the automatic allocation and reclamation of space for data structures. This paper concentrates on the problem of providing these facilities, for a functional language, satisfying the following constraints: the programming language permits cyclic data structures; the architecture is a distributed multi-processor; and global synchronization is not required.