25 citations found. Retrieving documents...
Wang, D., Appel, A.: Type-preserving garbage collectors. In: Proc. Principles of Programming Languages. (2001) 166--178

 Home/Search   Document Details and Download   Summary   Related Articles   Check  

This paper is cited in the following contexts:
Checking and Inferring Local Non-Aliasing - Aiken, Foster, Kodumal, Terauchi (2003)   (5 citations)  (Correct)

....[4] One important difference between restrict confine inference and region inference is that introducing restrict and confine requires that certain locations not be accessed within their scope, whereas introducing a new region never decreases the set of accessible locations. Wang and Appel [29] use a technique very similar to restrict to check that covariant subtyping under reference types is safe. This can be seen as another application of restrict. Automatic alias analysis has been heavily studied in recent years; a few of the many proposed analyses are [1, 7, 10, 18, 20, 21, 24, 26, ....

D. C. Wang and A. W. Appel. Type-Preserving Garbage Collectors. In Proceedings of the 28th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, London, United Kingdom, Jan. 2001.


Design and Correctness of Program Transformations Based.. - Banerjee, Heintze.. (2001)   (6 citations)  (Correct)

....programs [6] His method uses (essentially) a form of CFA to reduce the complexity of the defunctionalized program. However, no formal proofs of correctness for the transformations or of defunctionalization are provided. Finally, Wang and Appel in their work on type safe garbage collection [45] assume whole program compilation and CPS convert and defunctionalize source programs before performing garbage collection. Defunctionalization plays two distinct roles in this paper: as a basis for proofs of correctness, and as a basis for program transformations. The two roles come together ....

D. Wang and A. Appel. Type-preserving garbage collectors. In POPL'01, ACM Press.


A Typed Interface for Garbage Collection - Vanderwaart, Crary (2003)   (1 citation)  (Correct)

....interface. An important part of the runtime system for many modern languages is the garbage collector. Frameworks in which the runtime system must be certified must use certification technology capable of proving a garbage collector safe. Work on this approach includes that of Wang and Appel [10, 9] and of Monnier et al. 4] Of the systems that take the second approach, many assume the existence of a trusted conservative garbage collector; the advantage of this is that the application interface of a conservative collector is so simple that it can almost be ignored. There are performance ....

Daniel C. Wang and Andrew W. Appel. Typepreserving garbage collectors. In Proceedings of the Twenty-Eighth ACM Symposium on Principles of Programming Languages, pages 166--178, London, January 2001. A Syntax and Typing Rules of LGC A.1 Syntax The syntax of LGC is given in


A Linearly Typed Assembly Language - Cheney, Morrisett   (1 citation)  (Correct)

....through interpretation. However, all widely used systems for verifying low level code require a trusted run time environment to provide safe memory management. Furthermore, each of these systems takes a rather ad hoc approach to initialization of heap allocated objects. Recently, Wang and Appel [32] and Monnier, Saha, and Shao [16] have shown how to build a type safe garbage collector based on the ideas of the Capability Calculus [29] thus eliminating most of the memory management from the trusted computing base. However, some trusted code is still required to implement the region ....

Daniel C. Wang and Andrew W. Appel. Type-preserving garbage collectors. ACM SIGPLAN Notices, 36(3):166-178, 2001.


Towards An Extensible Virtual Machine - Boyapati (2002)   (1 citation)  (Correct)

....changing relationship with other objects. But the technology for static verification of heap properties is still in early stages. For example, we still cannot statically verify the correctness of a practical garbage collector, even though some recent advances o#er partial solutions to the problem [35, 51]. 3.5 Architecture of a Secure EVM To summarize the discussion so far, this paper argues that the interface to a portable EVM should consist of a low level instruction set and an expressive logic framework for representing safety proofs. Programs to be run on EVMs must be accompanied by safety ....

D. C. Wang and A. W. Appel. Type-preserving garbage collectors. In Principles of Programming Languages (POPL), January 2001.


Towards An Extensible Virtual Machine - Boyapati (2002)   (1 citation)  (Correct)

....changing relationship with other objects. But the technology for static veri cation of heap properties is still in early stages. For example, we still cannot statically verify the correctness of a practical garbage collector, even though some recent advances o er partial solutions to the problem [35, 51]. 3.5 Architecture of a Secure EVM To summarize the discussion so far, this paper argues that the interface to a portable EVM should consist of a low level instruction set and an expressive logic framework for representing safety proofs. Programs to be run on EVMs must be accompanied by safety ....

D. C. Wang and A. W. Appel. Type-preserving garbage collectors. In Principles of Programming Languages (POPL), January 2001.


On Regions and Linear Types (Extended Abstract) - Walker, Watkins (2001)   (Correct)

....In essence, they manually mimic the action of the copying garbage collector. More speci cally, they periodically copy the container data structure from one region to another. After the copy, they cease to use the data in the old region so it may safely be deallocated. Dan Wang and Andrew Appel [33] have exploited similar ideas to write a complete copying garbage collector in a type safe language that uses the regions. Although copying is highly e ective solution in many situations, it is not without its own overhead. If the container data structure is large, the extra space and time ....

Daniel C. Wang and Andrew Appel. Type-preserving garbage collectors. In Twenty-Eighth ACM Symposium on Principles of Programming Languages, pages 166-178, London, UK, January 2001.


Object Ownership and Containment - Clarke (2001)   (10 citations)  (Correct)

....[42] 180 6. Examples, Encodings, and Extensions Encoding the clone in the calculus is impossible with current type theoretic machinery. Because copying garbage collectors clone objects as a part of their operation, the technology underlying recent advances in type preserving garbage collectors [194] may provide the appropriate machinery in which to specify a type safe, containment safe clone operation, which could then be demonstrated as sound. 6.5 Concluding Remarks We have explored the expressiveness of our calculus through three subcalculi 0V, URV, and URDIV, where 0V is the ....

.... and Sakkinen describe [96] Can it be integrated with user defined clone operations How Lastly, it would be instructive to specify and prove the correctness of the clone operation using the advanced type theoretic techniques such as those used to specify type preserving garbage collectors [194]. Garbage Collection and the Stack based Allocation of Objects The original ownership types system and the URDIV calculus both enjoy the ownersas dominators property. From this it follows that an object and its entire interior can be deleted when the object becomes garbage, since no references ....

Daniel C. Wang and Andrew W. Appel. Type-preserving garbage collectors. In 28th ACM Symposium on Principles of Programming Languages, January 2001.


On Regions and Linear Types - Walker, Watkins   (15 citations)  (Correct)

....In essence, they manually mimic the action of the copying garbage collector. More speci cally, they periodically copy the container data structure from one region to another. After the copy, they cease to use the data in the old region so it may safely be deallocated. Dan Wang and Andrew Appel [41] have exploited similar ideas to write a complete copying garbage collector in a type safe language that uses the regions. Although copying is highly e ective solution in many situations, it is not without its own overhead. If the container data structure is large, the extra space and time ....

Daniel C. Wang and Andrew Appel. Type-preserving garbage collectors. In Twenty-Eighth ACM Symposium on Principles of Programming Languages, pages 166-178, London, UK, January 2001.


Implementation and Performance Evaluation of a Safe Runtime.. - Fluet, Wang (2004)   Self-citation (Wang)   (Correct)

No context found.

D. Wang and A. Appel. Type-preserving garbage collectors. Conference Record of the Twenty-Eigth Annual ACM Symposium on Principles of Programming Languages, pages 166--178, 2001.


High-Assurance Common Language Runtime - Appel, Walker, Shao, Trifonov   Self-citation (Appel)   (Correct)

No context found.

D. C. Wang and A. Appel. Type-preserving garbage collectors. In ACM SIGPLAN-SIGACT Symp. on Principles of Programming Languages, pages 166--178, London, UK, Jan. 2001.


Typed Machine Language and its Semantics - Swadi, Appel (2001)   (4 citations)  Self-citation (Appel)   (Correct)

....the model for instructions and many lemmas which are required to complete the proofs of program safety. Our allocation model is also not fully general and we hope to extend it to handle regions [14] This could allow us to use provably safe garbage collection schemes as shown by Wang and Appel [15]. We are also using TML to construct a semantic model for a TALlike calculus, completing the end to end path from ML source code to a foundational safety proof. 10. ACKNOWLEDGEMENTS We would like to thank Adriana Compagnoni, Amy Felty, Zhong Shao, Roberto Virga, David Walker and Dan Wang for ....

Daniel C. Wang and Andrew W. Appel. Type-preserving garbage collectors. In POPL 2001.


Region-Based Memory Management in Cyclone - Grossman, Morrisett, Jim..   (60 citations)  Self-citation (Wang)   (Correct)

....regions early [1] and Walker et al. 29, 30] propose general systems for freeing regions based on linear types. All of these systems are more expressive than our framework. For instance, the ideas in the Capability Calculus were used to implement type safe garbage collectors within a language [31, 23]. However, these systems were not designed for source level programming. They were designed as compiler intermediate languages or analyses, so they can ignore issues such as minimizing annotations or providing control to the user. Two other recent projects, Vault [7] and the work of Henglein et ....

D. C. Wang and A. W. Appel. Type-preserving garbage collectors. In Twenty-Eighth ACM Symposium on Principles of Programming Languages, pages 166--178, London, United Kingdom, Jan. 2001.


Formal Type Soundness for Cyclone's Region System - Grossman, Morrisett, Jim.. (2001)   Self-citation (Wang)   (Correct)

....regions early [1] and Walker et al. 23, 24] propose general systems for freeing regions based on linear types. All of these systems are more expressive than our framework. For instance, the ideas in the Capability Calculus were used to implement type safe garbage collectors within a language [25, 18]. However, these systems were not designed for source level programming. Rather, they were designed as compiler intermediate languages or analyses and can thus ignore user issues such as minimizing annotations or providing control to the user. Two other recent projects, Vault [7] and the work of ....

D. C. Wang and A. W. Appel. Type-preserving garbage collectors. In Twenty-Eighth ACM Symposium on Principles of Programming Languages, pages 166--178, London, United Kingdom, Jan. 2001. 19


Foundational Proof-Carrying Code - Appel (2001)   (44 citations)  Self-citation (Appel)   (Correct)

....two strange things that have made them difficult to express in a type safe language: they allocate and deallocate arenas of memory containing many objects of different types, and they traverse (and copy) objects of arbitrary user chosen types. Daniel Wang has developed a solution to these problems [22], based on the motto, Garbage collection = Regions Intensional types. That is, the region calculus of Tofte and Talpin [20] can 8 be applied to the problem of garbage collection, as noticed in important recent work by Walker, Crary, and Morrisett [21] to traverse objects of unknown type, the ....

Daniel C. Wang and Andrew W. Appel. Type-preserving garbage collectors. In POPL 2001: The 28th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, pages 166--178. ACM Press, January 2001. 10


Type-Preserving Garbage Collectors - Wang, Appel (2001)   (17 citations)  Self-citation (Wang Appel)   (Correct)

....sucient for our purposes but is still more complex then needed because of their static approach to handling issues of region aliasing. A simple region type system suitable for our purposes that supports early deallocation and handles region aliasing through a simple runtime check is described in [32]. We will use this system in the description of our work, because of its simplicity. Violations of Abstraction. The rst order restriction forces us to turn higher order objects such as closures, which are normally abstract, into concrete values with an explicit representation. This has the ....

....hd , tl ) in f : l; l PTR(l) l) Figure 12: Encoding Forwading Pointers 9 et al. [9] that region variables act like capabilities . We use this observation to revoke all old references to the object and allow access to the object only through references of the object s supertype. See [32] which sketches the soundness of the approach for a simpler core calculus. It is important to note that we still must at run time check that is not aliased by any other region variable, so that the new region variable 0 refers to a unique region. This extra alias check is need for this ....

Daniel C. Wang and Andrew W. Appel. Typepreserving garbage collectors (extend version). Technical Report TR-624-00, Princeton University, 2000.


Type-Preserving Garbage Collectors - Wang, Appel (2001)   (17 citations)  Self-citation (Wang Appel)   (Correct)

....su#cient for our purposes but is still more complex then needed because of their static approach to handling issues of region aliasing. A simple region type system suitable for our purposes that supports early deallocation and handles region aliasing through a simple runtime check is described in [32]. We will use this system in the description of our work, because of its simplicity. Violations of Abstraction. The first order restriction forces us to turn higher order objects such as closures, which are normally abstract, into concrete values with an explicit representation. This has the ....

....hd , tl ) in f: l;l PTR(l) # l) Figure 12: Encoding Forwading Pointers 9 et al. [9] that region variables act like capabilities . We use this observation to revoke all old references to the object and allow access to the object only through references of the object s supertype. See [32] which sketches the soundness of the approach for a simpler core calculus. It is important to note that we still must at run time check that # is not aliased by any other region variable, so that the new region variable # # refers to a unique region. This extra alias check is need for this ....

Daniel C. Wang and Andrew W. Appel. Typepreserving garbage collectors (extend version). Technical Report TR-624-00, Princeton University, 2000.


Linear Regions Are All You Need - Fluet, Morrisett, Ahmed   (Correct)

No context found.

Wang, D., Appel, A.: Type-preserving garbage collectors. In: Proc. Principles of Programming Languages. (2001) 166--178


Checking and Inferring Local Non-Aliasing - Alex Aiken Aiken (2003)   (5 citations)  (Correct)

No context found.

D. C. Wang and A. W. Appel. Type-Preserving Garbage Collectors. In Proceedings of the 28th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, London, United Kingdom, Jan. 2001.


Safe Programming at the C Level of Abstraction - Grossman (2003)   (Correct)

No context found.

Daniel Wang and Andrew Appel. Type-preserving garbage collectors. In 28th ACM Symposium on Principles of Programming Languages, pages 166-- 178, London, England, January 2001.


Local Reasoning about a Copying Garbage Collector - Birkedal, Torp-Smith, Reynolds (2004)   (7 citations)  (Correct)

No context found.

D. Wang and A. W. Appel. Type preserving garbage collectors. In Proc. POPL'01, pages 166 -- 178, 2001.


Low-Level Linear Memory Management - Hawblitzel, Wei, Huang, Krupski.. (2004)   (2 citations)  (Correct)

No context found.

Daniel C. Wang and Andrew W. Appel. Type-preserving garbage collectors. In Proceedings of the 28th ACM SIGPLAN-SIGACT symposium on Principles of programming languages, pages 166--178. ACM Press, 2001.


Low-Level Linear Memory Management - Hawblitzel, Huang, Krupski, Wei (2002)   (2 citations)  (Correct)

No context found.

Daniel C. Wang and Andrew W. Appel. Type-preserving garbage collectors. In Proceedings of the 28th ACM SIGPLAN-SIGACT symposium on Principles of programming languages, pages 166--178. ACM Press, 2001.


the Garbage Collection Bibliography - Richard Jones (2003)   (Correct)

No context found.

Daniel C. Wang and Andrew W. Appel. Type-preserving garbage collectors. In PLDI [PLDI2001].


the Garbage Collection Bibliography - Richard Jones (2003)   (Correct)

No context found.

Daniel C. Wang and Andrew W. Appel. Type-preserving garbage collectors (extended version). Technical report, Department of Computer Science, Princeton University, December 2000.

Online articles have much greater impact   More about CiteSeer.IST   Add search form to your site   Submit documents   Feedback  

CiteSeer.IST - Copyright Penn State and NEC