Type-preserving garbage collectors

D. C. Wang, A. W. Appel

Research output: Contribution to journalConference articlepeer-review

20 Scopus citations


By combining existing type systems with standard type-based compilation techniques, we describe how to write strongly typed programs that include a function that acts as a tracing garbage collector for the program. Since the garbage collector is an explicit function, we do not need to provide a trusted garbage collector as a runtime service to manage memory. Since our language is strongly typed, the standard type soundness guarantee "Well typed programs do not go wrong" is extended to include the collector. Our type safety guarantee is non-trivial since not only does it guarantee the type safety of the garbage collector, but it guarantees that the collector preservers the type safety of the program being garbage collected. We describe the technique in detail and report performance measurements for a few microbenchmarks as well as sketch the proofs of type soundness for our system.

Original languageEnglish (US)
Pages (from-to)166-178
Number of pages13
JournalConference Record of the Annual ACM Symposium on Principles of Programming Languages
StatePublished - 2001
Event28th ACM SIGPLAN-SIGACT Symposiu on Principles of Programming Languages - London, United Kingdom
Duration: Jan 17 2001Jan 19 2001

All Science Journal Classification (ASJC) codes

  • Software


Dive into the research topics of 'Type-preserving garbage collectors'. Together they form a unique fingerprint.

Cite this