A PROPOSAL FOR A COOPERATIVE, GARBAGE COLLECTED "C" PROGRAMMING LANGUAGE
Date
1990-04-01
Authors
Journal Title
Journal ISSN
Volume Title
Publisher
Abstract
This report identifies issues which arise when extending the C
language to cooperate with a garbage collector managing a garbage
collected heap. Adding a garbage collected heap to C is intended to
increase programmer productivity by reducing the complexity of
applications which use dynamically allocated memory. A mechanism
is known for garbage collection in C applications which do not cooperate
with the collector, but this mechanism is relatively expensive.
This report proposes modifications to the C language which will allow
it to cooperate with a garbage collector. The proposal modifies the
syntax and semantics of C very little, and the extension degrades the
performance of only those expressions which manipulate references
to the garbage collected heap. The proposal was partially implemented
in a compiler for a C-like language whose target machine was a
FORTH-like virtual machine.
Description
Keywords
Computer Science