ACM Home Page
Please provide us with feedback. Feedback
A type theory for memory allocation and data layout
Full text PdfPdf (140 KB)
Source ACM SIGPLAN Notices archive
Volume 38 ,  Issue 1  (January 2003) table of contents
Pages: 172 - 184  
Year of Publication: 2003
ISSN:0362-1340
Also published in ...
Authors
Leaf Petersen  Carnegie Mellon University, Pittsburgh, PA
Robert Harper  Carnegie Mellon University, Pittsburgh, PA
Karl Crary  Carnegie Mellon University, Pittsburgh, PA
Frank Pfenning  Carnegie Mellon University, Pittsburgh, PA
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 5,   Downloads (12 Months): 44,   Citation Count: 7
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/640128.604147
What is a DOI?

ABSTRACT

Ordered type theory is an extension of linear type theory in which variables in the context may be neither dropped nor re-ordered. This restriction gives rise to a natural notion of adjacency. We show that a language based on ordered types can use this property to give an exact account of the layout of data in memory. The fuse constructor from ordered logic describes adjacency of values in memory, and the mobility modal describes pointers into the heap. We choose a particular allocation model based on a common implementation scheme for copying garbage collection and show how this permits us to separate out the allocation and initialization of memory locations in such a way as to account for optimizations such as the coalescing of multiple calls to the allocator.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
Jawahar Chirimar, Carl A. Gunter, and Jon G. Riecke. Reference counting as a computational interpretation of linear logic. Journal of Functional Programming, 6(2):195--244, 1996.
2
 
3
4
 
5
A. Igarashi and N. Kobayashi. Garbage collection based on a linear type system, 2000.
 
6
T. Jim, G. Morrisett, D. Grossman, M. Hicks, J. Cheney, and Y. Wang. Cyclone: A safe dialect of c, June 2002.
7
8
 
9
Greg Morrisett, Karl Crary, Neal Glew, Dan Grossman, Richard Samuels, Frederick Smith, David Walker, Stephanie Weirich, and Steve Zdancewic. TALx86: A realistic typed assembly language. In Second Workshop on Compiler Support for System Software, pages 25--35, Atlanta, Georgia, May 1999.
 
10
11
12
 
13
Leaf Petersen, Robert Harper, Karl Crary, and Frank Pfenning. A type theory for memory allocation and data layout. Technical Report CMU-CS-02-171, Department of Computer Science, Carnegie Mellon University, December 2002.
 
14
 
15
 
16
 
17
Jeff Polakow and Frank Pfenning. Relating natural deduction and sequent calculus for intuitionistic non-commutative linear logic. In Andre Scedrov and Achim Jung, editors, Proceedings of the 15th Conference on Mathematical Foundations of Programming Semantics, New Orleans, Louisiana, April 1999. Electronic Notes in Theoretical Computer Science, Volume 20.
 
18
Jeff Polakow and Frank Pfenning. Properties of terms in continuation-passing style in an ordered logical framework. In J.Despeyroux, editor, Proceedings of the 4th International Conference on Typed Lambda Calculi and Applications (TLCA'99), Santa Barbara, California, June 2000.
 
19
Zhong Shao. An overview of the FLINT/ML compiler. In 1997 Workshop on Types in Compilation, Amsterdam, June 1997. ACM SIGPLAN. Published as Boston College Computer Science Department Technical Report BCCS-97-03.
 
20
21
 
22
23


Collaborative Colleagues:
Leaf Petersen: colleagues
Robert Harper: colleagues
Karl Crary: colleagues
Frank Pfenning: colleagues