Region-based memory management in cyclone
Title | Region-based memory management in cyclone |
Publication Type | Journal Articles |
Year of Publication | 2002 |
Authors | Grossman D, Morrisett G, Jim T, Hicks MW, Wang Y, Cheney J |
Journal | SIGPLAN Not. |
Volume | 37 |
Issue | 5 |
Pagination | 282 - 293 |
Date Published | 2002/05// |
ISBN Number | 0362-1340 |
Abstract | Cyclone is a type-safe programming language derived from C. The primary design goal of Cyclone is to let programmers control data representation and memory management without sacrificing type-safety. In this paper, we focus on the region-based memory management of Cyclone and its static typing discipline. The design incorporates several advancements, including support for region subtyping and a coherent integration with stack allocation and a garbage collector. To support separate compilation, Cyclone requires programmers to write some explicit region annotations, but a combination of default annotations, local type inference, and a novel treatment of region effects reduces this burden. As a result, we integrate C idioms in a region-based framework. In our experience, porting legacy C to Cyclone has required altering about 8% of the code; of the changes, only 6% (of the 8%) were region annotations. |
URL | http://doi.acm.org/10.1145/543552.512563 |
DOI | 10.1145/543552.512563 |