The present invention discloses a system for transparent local and
distributed memory management. The invention overcomes the prior art's
requirement of keeping track of whether a memory space allocated to a new
object or a new program or data structure can be reclaimed. According to
the present invention an autorelease pool is created at the beginning of
a new duty cycle. The autorelease pool retains the newly allocated memory
space during the duty cycle. The autorelease pool is automatically
disposed of at the end of the duty cycle. As a result of disposing the
autorelease pool, the newly allocated memory space is reclaimed (i.e.,
deallocated). The present invention is useful in distributed networks
where different programming conventions on remote and local machines made
the prior art's memory management task particularly difficult. The
present invention is also useful in an object-oriented programming
environment.