37 citations found. Retrieving documents...
F. Smith, D. Walker, and G. Morrisett. Alias types. In European Symposium on Programming, pages 366--381, Berlin, Mar. 2000.

 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)

....One of the limitations of our approach is that restrict and confine must be lexically scoped. This assumption fits well with many, but not all, uses of restrict and confine in practice. Other type based systems that model strong and weak updates and do not have lexical scoping restrictions [9, 12, 25] are more expressive, but also less suited to tractable automatic inference than our approach. For example, Boyland [3] shows how to check several programming paradigms using non lexically scoped linearities and flow sensitive aliasing information. There are several systems for modeling ....

.... us to locally recover the ability to treat a pointer as a reference to a unique value, which allows analyses that use restrict and confine information to perform strong updates [5] This idea is the subject of previous work [15] that combines restrict with ideas from flow sensitive type systems [25]. The resulting system can be used to check flow sensitive program properties. Several other systems, such at Meta level compilation [17] and ESP [8] check flow sensitive program properties using approaches more directly based on dataflow analysis. In these systems, arbitrary dataflow facts are ....

F. Smith, D. Walker, and G. Morrisett. Alias Types. In G. Smolka, editor, 9th European Symposium on Programming, volume 1782 of Lecture Notes in Computer Science, pages 366--381, Berlin, Germany, 2000. Springer-Verlag.


Observational Determinism for Concurrent Program Security - Zdancewic, Myers (2003)   (3 citations)  (Correct)

....ensure that references and nonlinear channels are used sequentially. Simple syntactic constraints can enforce this property [31] Sequentiality can 10 also be formulated in the type system [19] but doing so is rather complex. Another possibility is to track aliasing directly in the type system [40, 46], which would potentially permit very finegrained control of concurrency. More generally, pointer or shape analysis can be used to approximate read( and write( 21, 9, 10, 33] Because # SEC s sequential core is essentially an imperative language with goto, we expect that these existing ....

F. Smith, D. Walker, and G. Morrisett. Alias types. In Proc. of the 9th European Symposium on Programming, volume 1782 of Lecture Notes in Computer Science, pages 366--381, 2000.


Existential Heap Abstraction Entailment is Undecidable - Kuncak, Rinard (2003)   (1 citation)  (Correct)

....limits the set of properties that they can express. It is therefore desirable to develop abstractions that change as the properties of objects change. A typestate is a system where types of objects change over time. A simple typestate system was introduced in [34] more recent examples include [8 11,14,21,33,36]. Similarly to [13] these typestate systems are a step towards the highly automated static checking of complex properties of objects. One of the di#culties in specifying properties of objects in the presence of linked data structures is that a property of an object x may depend on properties of ....

....than the requirements of analyses intended for program optimization. It is these precision requirements of the compositional analysis that motivate the study of the completeness of heap property entailment algorithms. 4 Several recent systems support the analysis of tree like data structures [3, 9, 15,24,33,36]. The restriction to tree like data structures is in contrast to our notion of a heap, which allows nodes with in degree greater than one. The presence of non tree data structures is one of the key factors that make the implication of regular graph constraints undecidable. 1] suggests an ....

F. Smith, D. Walker, and G. Morrisett. Alias types. In Proc. 9th European Symposium on Programming, Berlin, Germany, March 2000.


Enforcing High-Level Protocols in Low-Level Software - DeLine, Fahndrich (2001)   (131 citations)  (Correct)

....to the example in Section 2.1. Instead of correlating the two tests with the condition on ) the second branch would switch on a variant initialized in the branches of the first test. 3. VAULT S TYPE SYSTEM Vault s type system is based on the Capability Calculus [3] and alias types [15, 20]. The language s complete typing rules are lengthy. Here we only sketch how tracked types and type guards are represented in the underlying type language and the overall structure of the type checker. Because Vault s typing rules are very similar to the Capability Calculus, we rely on their ....

....language NIL [17, 16] In NIL, states are attached to objects along with their types. NIL does not allow any aliasing of objects, thus severely restricting the class of programs that can be expressed in NIL. The work involving the calculus of capabilities by Crary, Walker, Smith, and Morrisett [3, 19, 15, 20] shows how to track states of objects in the presence of aliasing. The essential improvement over the typestate approach is to add a level of indirection between objects and their state through keys. Now the non aliasing requirement is confined to keys whereas the aliasing relationships among ....

F. Smith, D. Walker, and G. Morrisett. Alias types. In Proceedings of the 2000.


A Practical Flow-Sensitive and Context-Sensitive C and C++.. - Heine, Lam (2003)   (5 citations)  (Correct)

....allows aliases but the aliases are all nullified when one of them is read[4] He proposed an inference algorithm that requires annotations be placed on procedural interfaces. Alias types have been proposed to allow limited forms of aliasing by specifying the expected data memory shape properties[24, 27]. Linear types have been applied to track resource usage[14] and verify the correctness of region based memory management[10, 15, 16, 17, 18, 25] Finally, Dor et al. propose checking for memory leaks using a sophisticated pointer shape analysis[11] unfortunately the scalability of this powerful ....

F. Smith, D. Walker, and G. Morrisett. Alias types. In Proceedings of the Ninth European Symposium on Programming, pages 366--381, April 2000.


Typestate Checking and Regular Graph Constraints - Kuncak, Rinard (2002)   (Correct)

....In an imperative language properties of objects change over time. It is therefore desirable that types capture changing properties of objects. A typestate system is a system where types of objects change over time. A simple typestate system was introduced in [25] more recent examples include [14, 23, 28, 5]. We view typestate as a step towards statically checking properties of objects [17, 8] One of the diculties with de ning object properties in object oriented languages is that a property of an object may depend on properties of other objects in the heap. Some systems allow programmers to ....

....in [24] The original typestate system as well as the more recent work in the context object oriented programming [6] do not support constraints over dynamically allocated objects, which is the focus of our paper. Several recent systems support tree like dynamically allocated data structures [23, 28, 9, 18]. The restriction to tree like data structures is in contrast to our notion of heap, which allows cycles. The presence of non tree data structures is one of the key factors that make the implication of regular graph constraints undecidable. The idea of representing properties of a statically ....

F. Smith, D. Walker, and G. Morrisett. Alias types. In Proceedings of the 14th European Symposium on Programming, Berlin, Germany, March 2000.


Ownership Types and Safe Lazy Upgrades in Object-Oriented.. - Boyapati, Liskov, Shrira (2002)   (1 citation)  (Correct)

....must be able to name the owner of x to be able to access x. The notation (x y) is explained in Section 3.1 Linear types [51] and unique pointers [40] can also be used to control object aliasing. Linear types have been used to support safe explicit memory deallocation in low level languages [18, 48, 28]. Vault [22, 23] uses an extension of linear types to enforce low level protocols. Linear types and unique pointers are orthogonal to ownership types, but the two can be used in conjunction to provide more expressive type systems. PRFJ [10] is the rst system to combine ownership types with unique ....

....can express. SCJ [9] and AliasJava [2] also combine ownership types with unique pointers. The type system we presented in this paper can be combined with unique pointers in an analogous way. Our ownership type system is somewhat similar to the type systems in Capability Calculus [18] Alias Types [48], and Cyclone [28] for doing region based memory management. For example, in Cyclone, classes and methods are parameterized with regions. In our system, classes and methods are parameterized with owners. In Cyclone, methods specify the regions that must be alive at method entry. In our system, ....

F. Smith, D. Walker, and G. Morrisett. Alias types. In European Symposium on Programming (ESOP), March 2000.


A Language for Role Specifications - Kuncak, Lam, Rinard (2001)   (Correct)

....Although the focus in this paper is on the speci cation language, the analyzability of the language was our major concern. The techniques useful for role analysis are discussed in [15] 12] 4] More restrictive approaches rely on the extensions of linear type systems or on ownership types [16], 11] 2] 9 Conclusion We have proposed a language for specifying invariants of objects which move between dynamically changing data structures. We have given the syntax and semantics of the language and illustrated its use on several examples. The role de nition sublanguage enables the ....

F. Smith, D. Walker, and G. Morrisett. Alias types. In ########### ## ### #### ######## ######### ## ###########, Berlin, Germany, March 2000.


Ownership Types and Safe Lazy Upgrades in Object-Oriented.. - Boyapati, Liskov, Shrira (2002)   (1 citation)  (Correct)

....a weak encapsulation property, that an application must be able to name the owner of x to be able to access x. Linear types [51] and unique pointers [40] can also be used to control object aliasing. Linear types have been used to support safe explicit memory deallocation in low level languages [18, 48, 28]. Vault [22, 23] uses an extension of linear types to enforce low level protocols. Linear types and unique pointers are orthogonal to ownership types, but the two can be used in conjunction to provide more expressive type systems. PRFJ [10] is the first system to combine ownership types with ....

....can express. SCJ [9] and AliasJava [2] also combine ownership types with unique pointers. The type system we presented in this paper can be combined with unique pointers in an analogous way. Our ownership type system is somewhat similar to the type systems in Capability Calculus [18] Alias Types [48], and Cyclone [28] for doing region based memory management. For example, in Cyclone, classes and methods are parameterized with regions. In our system, classes and methods are parameterized with owners. In Cyclone, methods specify the regions that must be alive at method entry. In our system, ....

F. Smith, D. Walker, and G. Morrisett. Alias types. In European Symposium on Programming (ESOP), March 2000.


Adoption and Focus: Practical Linear Types for Imperative.. - Fahndrich, DeLine (2002)   (37 citations)  (Correct)

....counted, and region allocated. The kind of an object is fixed at allocation without a means to change kind. They provide let only for regions. Alias type systems. Originally developed to track incremental initialization in TAL, alias types provide compile time names for unshared objects [13]. Walker extends this approach with existentially bound capabilities to support recursive data structures [18] bringing back the full expressibility of linear types and its fine grained resource management. The advantage of alias types over linear types is that uses are not destructive and local ....

F. Smith, D. Walker, and J. G. Morrisett. Alias types. In European Symposium on Programming, pages 366--381, 2000.


Object Models, Heaps, and Interpretations - Rinard, Kuncak (2001)   (Correct)

....by using deci sion procedure of MONA [8] Shape types [4] based on graph grammars [3] can be used for similar pur pose. A system for program analysis with additional information about data structures is proposed in [5] A type based approach for conveying alias properties is given in [12]. Documenting alias information in programs and verifying ownership properties is discussed in [2] and [1] 6 Conclusions We introduced a small object modeling language. We defined its syntax and semantics in terms of program heaps. We can summarize the concept of program conforming to an object ....

F. Smith, D. Walker, and G. Morriserr. Alias types. In European Symposium on Programming. Berlin, Germany. (March 2000.


Object Models, Heaps, and Interpretations - Rinard, Kuncak (2001)   (Correct)

....invariants by using decision procedure of MONA [8] Shape types [4] based on graph grammars [3] can be used for similar purpose. A system for program analysis with additional information about data structures is proposed in [5] A type based approach for conveying alias properties is given in [12]. Documenting alias information in programs and verifying ownership properties is discussed in [2] and [1] 6 Conclusions We introduced a small object modeling language. We de ned its syntax and semantics in terms of program heaps. We can summarize the concept of program conforming to an object ....

F. Smith, D. Walker, and G. Morrisett. Alias types. In Proceedings of the 14th European Symposium on Programming, Berlin, Germany, March 2000. 12


Role Analysis - Kuncak, Lam, Rinard (2002)   (20 citations)  (Correct)

....addition to specifying roles for the elds of the object, the role declaration also identi es the complete set of references in the heap that refer to the object. In this way roles generalize linear type systems [48, 30] by allowing multiple aliases to be statically tracked, and extend alias types [43, 49] with the ability to specify the roles of objects that are the source of aliases. This approach attacks a key diculty associated with state based type systems: the need to ensure that any state change performed using one alias is correctly re ected in the declared types of the other aliases. ....

.... of assembly language programs [51, 52] Motivated by the need to enforce safety properties in lowlevel software systems, several researchers have developed systems that use extensions of linear types to avoid general aliasing and rely on language design to avoid non local type inference [43, 49, 9]. These systems take a constructionbased approach that speci es data structures as unfoldings of basic elaboration steps [49] Similarly to shape types [13] this approach can capture very precise properties of treelike data structures but cannot approximate data structures such as sparse ....

F. Smith, D. Walker, and G. Morrisett. Alias types. In Proceedings of the 14th European Symposium on Programming, Berlin, Germany, March 2000.


On Bunched Typing - O'Hearn (2000)   (Correct)

....from the programmer) than in a source language. It would be worthwhile to develop an abstract or high level form of control over higher order refences, more along the lines of SCI. In a recent development, Smith, Walker and Morrissett have devised a fascinating system for interference control [49, 53], which correctly handles higher order store, and which is remarkably similar in structure to a program logic based on BI [20] Despite the suggestive structural similarity, the relationship of their work to bunched typing is not yet clear. 37 9 A Model for SCI Our purpose in this section is ....

F. Smith, D. Walker, and G. Morrissett. Alias types. ESOP'00.


An Effective Theory of Type Refinements - Mandelbaum, Walker, Harper (2003)   (9 citations)  Self-citation (Walker)   (Correct)

No context found.

F. Smith, D. Walker, and G. Morrisett. Alias types. In European Symposium on Programming, pages 366--381, Berlin, Mar. 2000.


The Logical Approach to Stack Typing - Ahmed, Walker (2003)   (7 citations)  Self-citation (Walker)   (Correct)

No context found.

F. Smith, D. Walker, and G. Morrisett. Alias types. In European Symposium on Programming, pages 366--381, Berlin, Mar. 2000.


Reasoning about Hierarchical Storage - Amal Ahmed Limin (2003)   (4 citations)  Self-citation (Walker)   (Correct)

No context found.

F. Smith, D. Walker, and G. Morrisett. Alias types. In European Symposium on Programming, pages 366--381, Berlin, Mar. 2000.


A Linear Language with Locations - Greg Morrisett Amal   Self-citation (Morrisett)   (Correct)

No context found.

Smith, F., Walker, D., Morrisett, G.: Alias types. In: (ESOP). (2000)


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

No context found.

F. Smith, D. Walker, and G. Morrisett. Alias types. In European Symposium on Programming, March 2000.


Reasoning about Hierarchical Storage - Amal Ahmed Limin (2003)   (4 citations)  Self-citation (Walker)   (Correct)

No context found.

F. Smith, D. Walker, and G. Morrisett. Alias types. In European Symposium on Programming, pages 366--381, Berlin, Mar. 2000.


An Effective Theory of Type Refinements - Mandelbaum, Walker, Harper (2003)   (9 citations)  Self-citation (Walker)   (Correct)

No context found.

F. Smith, D. Walker, and G. Morrisett. Alias types. In European Symposium on Programming, pages 366--381, Berlin, Mar. 2000.


An Effective Theory of Type Refinements - Mandelbaum, Walker, Harper (2002)   (9 citations)  Self-citation (Walker)   (Correct)

No context found.

F. Smith, D. Walker, and G. Morrisett. Alias types. In European Symposium on Programming, pages 366--381, Berlin, Mar. 2000.


The Logical Approach to Stack Typing - Ahmed, Walker (2003)   (7 citations)  Self-citation (Walker)   (Correct)

No context found.

F. Smith, D. Walker, and G. Morrisett. Alias types. In European Symposium on Programming, pages 366--381, Berlin, Mar. 2000.


An Effective Theory of Type Refinements - Mandelbaum, Walker, Harper (2003)   (9 citations)  Self-citation (Walker)   (Correct)

....in our examples as they may easily be inferred in a similar manner to the way the Twelf system [30] infers leading quantifiers. 4. 1 Alias Types Our first example demonstrates how our system of type refinements is able to capture simple aliasing constraints, as in previous work on alias types [34, 38]. These constraints allow us to deallocate memory explicitly, yet safely, using the free function. The refinement signature for this application appears below. unit i : int (for any integer i) # : int ref (for any location #) new : Its(i) 1) # #[#:int ref ] Its(#) ctns(#, i) get : ....

....find locking bugs in the Linux kernel. One significant difference between our work and the others is that we have chosen to use a general substructural logic to encode program properties. Vault is the most similar since its type system is derived from the capability calculus [37] and alias types [34, 38], which is also an inspiration for this work. However, the capability logic is somewhat ad hoc whereas we base our type system directly on linear logic. As far as we are aware, the semantics of vault has not geen fully formalized. We hope this work is an e#ective starting point in that endeavour. ....

F. Smith, D. Walker, and G. Morrisett. Alias types. In European Symposium on Programming, pages 366--381, Berlin, Mar. 2000.


Designing an Algorithm for Role Analysis - Kuncak (2001)   Self-citation (Smith)   (Correct)

....to specifying roles for the elds of the object, the role declaration also identi es the complete set of references in the heap that refer to the object. In this way roles generalize linear type systems [87, 6, 56] by allowing multiple aliases to be statically tracked, and extend alias types [82, 88] with the ability to specify roles of objects that are the source of aliases. This approach attacks a key diculty associated with state based type systems: the need to ensure that any state change performed using one alias is correctly re ected in the declared types of the other aliases. ....

....the existence of aliases not mentioned in the role de nition. 77 78 Chapter 7 Related Work In this chapter we present the relationship of our work with previous approaches to program analysis, checking, and veri cation. We rst compare our work with the typestate systems including alias types [82] and calculus of capabilities [19] We mention the previous work on aliasing control for object oriented languages [46] and the use of roles in object oriented modeling [70] and database programming languages [35] We compare our role analysis with shape types [32] graph types [64] path matrix ....

[Article contains additional citation context not shown here]

F. Smith, D. Walker, and G. Morrisett. Alias types. In Proceedings of the 14th European Symposium on Programming, Berlin, Germany, March 2000.


Resources, Concurrency and Local Reasoning - O'Hearn (2005)   (Correct)

No context found.

F. Smith, D. Walker, and G. Morrisett. Alias types. Proceedings of ESOP'99.


On Spatial Conjunction as Second-Order Logic - Kuncak, Rinard (2004)   (Correct)

No context found.

F. Smith, D. Walker, and G. Morrisett. Alias types. In Proc. 9th ESOP, Berlin, Germany, Mar. 2000.


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

No context found.

F. Smith, D. Walker, and G. Morrisett. Alias Types. In G. Smolka, editor, 9th European Symposium on Programming, volume 1782 of Lecture Notes in Computer Science, pages 366--381, Berlin, Germany, 2000. Springer-Verlag.


Ownership Transfer and Abstraction - Banerjee, Naumann (2003)   (Correct)

No context found.

G. Morrisett, F. Smith, and D. Walker. Alias types. In ESOP, 2000.


Typestates for Objects - Deline, Fahndrich (2004)   (10 citations)  (Correct)

No context found.

Smith, F., Walker, D., Morrisett, J.G.: Alias types. In: European Symposium on Programming. (2000) 366--381


Existential Heap Abstraction Entailment is Undecidable - Kuncak, Rinard (2003)   (1 citation)  (Correct)

No context found.

F. Smith, D. Walker, and G. Morrisett. Alias types. In Proc. 9th European Symposium on Programming, Berlin, Germany, March 2000.


Connecting Effects and Uniqueness with Adoption - Boyland   (Correct)

No context found.

Smith, F., Walker, D., Morrisett, J.G.: Alias types. In Smolka, G., ed.: ESOP'00 --- Programming Languages and Systems, 9th European Symposium on Programming. Volume 1782 of Lecture Notes in Computer Science., Berlin, Heidelberg, New York, Springer (2000) 366--381


Prospectus - Student Nadeem Abdul   (Correct)

No context found.

F. Smith, D. Walker, and G. Morrisett. Alias types. In G. Smolka, editor, Proc. 9th European Symposium on Programming (ESOP 2000.


A Language for Role Specifications - Kuncak, Lam, Rinard (2001)   (Correct)

No context found.

F. Smith, D. Walker, and G. Morrisett. Alias types. In Proc. 9th European Symposium on Programming, Berlin, Germany, March 2000.


Typed Regions - Monnier (2004)   (Correct)

No context found.

F. Smith, D. Walker, and G. Morrisett. Alias types. In European Symposium on Programming, 2000.


Time Regions and Effects for Resource Usage Analysis - Kobayashi (2003)   (Correct)

No context found.

F. Smith, D. Walker, and J. G. Morrisett. Alias types. In European Symposium on Programming, volume 1782 of Lecture Notes in Computer Science, pages 366--381, 2000.


Flow-Sensitive Type Qualifiers - Foster, Terauchi, Aiken (2002)   (43 citations)  (Correct)

No context found.

F. Smith, D. Walker, and G. Morrisett. Alias Types. In G. Smolka, editor, 9th European Symposium on Programming, volume 1782 of Lecture Notes in Computer Science, pages 366--381, Berlin, Germany, 2000. Springer-Verlag.

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