Ginter, Andrew2008-05-202008-05-201990-04-01http://hdl.handle.net/1880/46516This 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.EngComputer ScienceA PROPOSAL FOR A COOPERATIVE, GARBAGE COLLECTED "C" PROGRAMMING LANGUAGEunknown1990-384-0810.11575/PRISM/31276