| Mitchell Wand. Complete type inference for simple objects. In Proceedings, Symposium on Logic in Computer Science, pages 37--44. IEEE, 1987. |
....way of extending our type system in order to bridge this gap makes type inference NP complete. 1.2. Constraint based Type Inference It is well known that many type inference problems have a natural and simple formulation as the satisfiability problem of an appropriate constraint system (e.g. [29, 32, 42]) Constraints were also instrumental in generalizing the ML type system towards record polymorphism [28, 34, 43] overloading [8, 27] and subtyping [1, 12, 32] see also [26] for further references) Along this line, we use feature trees [3] as the semantic domain of the constraint system ....
M. Wand. Complete type inference for simple objects. In Proceedings of the IEEE Symposium on Logic in Computer Science, pp. 37--44. IEEE Computer Society Press, 1987. Corrigendum in LICS '88, p. 132.
....gap would require both positive and negative OF constraints and thus make type inference NP hard. 1. 2 Constraint based Type Inference It is well known that many type inference problems have a natural and simple formulation as the satisfiability problem of an appropriate constraint system (e.g. [20, 31]) Constraints were also instrumental in generalizing the ML type system towards record polymorphism [19, 22, 32] overloading [6, 18] and subtyping [1, 8] see also [28] Along this line, we adopt feature trees [3] as the semantic domain of the constraint system underlying our type system. A ....
M. Wand. Complete type inference for simple objects. In IEEE Symp. on Logic in Computer Science, pp. 37--44. IEEE Computer Society Press, 1987. Corrigendum in LICS '88, p. 132.
....of the Tagged Types introduced in [3] where their theory, including canonical forms and unification algorithms is developed in depth. Unification of Tagged Types is reducible to standard unification for first order terms. Conceptually, tagged types bear strong relationships with Wand s row types [20] and Rmy s record types [18] but the logical and technical treatments of tagged types are original and yield, we beleive, a simpler and more intuitive treatment. The typing rules for behavior expressions are summarized in Table 3.1; other expressions of the language are typed as in SML. Events ....
M. Wand. "Complete Type Inference for Simple Objects", In Second Symposium on Logic in Computer Science, Ithaca, New York, june 1987.
.... of X Y p:t1 Y expansion of Y t2 t2 unification of t2 and t2 (for label q) t1 t1 unification of t1 and t1 (for label p) X Y unification of behavior variables X and Y (for all labels) 4 LCS behavior variables have similarities with Wand s row variables introduced in [Wan87], in which they are used for typing records. Despite this, type inference here and in the mentioned reference have important differences, as the support of behavior types (the set of labels to which types are assigned) is not required to be a finite set here. Types are assigned to all ....
....about 6000 lines of ML, producing a core image of approximately 145 Kb. 4. 0 Conclusions As a language design experiment, and beside its extensions of CCS, LCS brings a new method for typing behaviors that, certainly, could be used for typing other language constructs (records for instance, as in [Wan87]) though we did not attempt yet to apply this idea in other contexts. As a language implementation experiment, LCS brings its elaborated implementation of an higher order language with all capabilities of CCS, plus computed communication ports and support of side effects. The experiment leads to ....
M. WAND. Complete Type Inference for Simple Objects. In Symposium on Logic in Computer Science, Ithaca, New York, june 1987.
....However, extending languages with type inference in this manner can pose two serious problems: there may be no single most general typings, or worse yet, the type inference problem may become undecidable. 1. 2 Background and Results The viewpoint developed by [Car84] and adopted by many others [Wan87, Sta88, JM88, Rem89] is to think of an object as a record consisting of a finite set of labeled, typed fields. Inheritance is modeled by allowing a function defined on a record to be used automatically on a record with more fields. More specifically, the subclass relation is that a record type ....
....of records. The seminal work on this topic, Car84] provides a set of typing rules for a type system with record subtyping and presents a type checking algorithm for that language. However, the programmer is required to declare the types of all variables, and type inference is not provided. Wan87] has the a similar sort of subtype relation among record types as [Car84] but a somewhat different set of typing rules, and he does provide an algorithm for type inference. The main technical innovations are the introduction of row variables , which allow more flexibility in the typing of ....
[Article contains additional citation context not shown here]
M. Wand. Complete type inference for simple objects. In Proc. 2-nd IEEE Syrup. on Logic in Computer Science, pages 37-44, June 1987.
....Department of Computer Science, University of Edinburgh, The King s Buildings, Edinburgh, EH9 3JZ, U.K. Electronic mail: bcp dcs.ed.ac.uk. Models for various object oriented features have also been given using different techniques [MHF93, Aba93, CGL92, Cas92, Car92, AC94b, AC94a, Mit90, Wan87, Wan88, Wan89, etc. The core calculus underlying all of these models is an extension of Girard s higher order polymorphic calculus, System F , with subtyping. Many of the ideas behind this system, called F ( F omegasub ) are due to Cardelli, particularly to his 1988 paper, ....
Mitchell Wand. Complete type inference for simple objects. In Proceedings of the IEEE Symposium on Logic in Computer Science, Ithaca, NY, June 1987.
....the object level. Despite this di erence, the research on object based languages has greatly bene ted from the experience gained on class based languages. For instance, the typing of extensible objects in [16, 7, 17, 6, 24, 21] relies essentially on the same notion of row variable introduced by [26] to type extensible records. Similarly, the notion of recursive recordtypes, introduced to provide functional models of class based languages [12, 9, 14, 13] has then been re ned into that of Self types in type systems for object calculi supporting method override and object subsumption [3] A ....
M. Wand. Complete Type Inference for Simple Objects. In LICS'87, 37-44, IEEE
....referred to as Mytype method specialization , reinterprets the symbol self in the type of the inheriting object. This high mutability of method bodies is accommodated in the type system via an implicit form of higher order polymorphism, inspired by the the work of Wand on extensible records [25]. In Proc. of ACM SIGPLAN OOPSLA 98, International Symposium on Object Oriented, Programming, System, Languages and Applications, Vancouver, British Columbia, ACM Press, 1998. The calculus Obj has spurred an intense research in type assignment systems for object calculi. Several calculi ....
M. Wand. Complete Type Inference for Simple Objects. In Proc. of LICS, pages 37-44. IEEE Press, 1987.
....discovered incrementally, and (2) the order of field names in a record type often does not matter. For example, Jategaonkar [J89] shows how to add the algebraic properties of record types to a structural reconstruction system and proves her resulting system sound and complete. Wand [W89] extends [W87] by considering concatenation of records as a way of formalizing multiple inheritance. Wand uses disjunctions of constraints on record types to generate multiple possible types for an expression. Any kind of structural reconstruction depends upon the existence of syntactic principal types. A ....
....of syntactic principal types. A syntactic principal type describes all of the possible types of an expression via permissible syntactic substitutions for certain type variables. Syntactic principal types can often be preserved when one wants to extend the language with constructs such as records [C84, W87], although one has to be careful not to introduce too much flexibility [W88] In the latter case, syntactic principal typing is lost because a simple syntactic substitution is not powerful enough to describe the set of types an expression might have. The advantage of algebraic reconstruction is ....
[Article contains additional citation context not shown here]
Wand, M. Complete Type Inference for Simple Objects. In Proceedings of the IEEE LICS Symposium. IEEE, 1987.
....inheritance, which includes but should not be limited to, as we shall see the ability to add and redene methods. With this informal notion of object orientation in mind, let us review some of the proposals we alluded to. An elegant proposal was made by Wand [51] based on his row variables [49], consisting of a class based model, where classes are functions from instance variables and a self parameter to extensible records of methods, and objects are xpoints of instantiated classes, that is, recursive records. In this model invoking the method of an object amounts to selecting the ....
....from the case of let rec expressions, that is (ii) and (iii) of Denition 2. 4, we already know how to do that: use functional types for expressions that have to be applied, reference types ref for expressions that have to be de referenced or assigned to, and record types, with row variables [41, 49], hae; 1 : 1 ; k : k i for expressions that are subject to selection, or extension, or restriction. Since we want to be able to dene recursive expressions of any type, there is no specic type construct associated with recursion. However, to exclude unsafe recursion, we will use ....
[Article contains additional citation context not shown here]
M.Wand, Complete type inference for simple objects, LICS'87 (1987) 37-44.
....Despite the conceptual di erences between the underlying object oriented models 1 , several ideas originated from the experience on class based languages have proved useful in the development of type systems for delegation based languages. For instance, the notion of row variable introduced by [22] to type extensible records was re ned in [14,7,15,6,20] to type extensible objects. Similarly, the recursive record types, introduced to provide functional models of class based languages [11,9,13,12] have then been applied to characterize object calculi supporting method override in presence of ....
M. Wand. Complete Type Inference for Simple Objects. In LICS'87, pages 37-44. Silver Spring, 1987. 14
....would presumably be fA=1,B=trueg. This property may be problematic when we want to deal with those operations, such as equality test, that depend on the exact structure of values. As we shall discuss in Section 6, subtyping also complicates implementation. An alternative approach, initiated by Wand [1987; 1988] is to extend ML style polymorphic typing directly to record polymorphism. This idea was further developed in a number of type inference systems [Jategaonkar and Mitchell 1993; Ohori and Buneman 1988; 1989; R emy1989; 1992; 1994b; Wand 1989] In these type systems, a most general ....
....: 8t1 : ffX : real; Y : realgg:8t2 : ffR : realgg:hCartesian : t1 ; Polar : t2 i real dist(hCartesian=fX=0.0, Y=10.0, Color= Green gi) real Fig. 1. Example of programs with their inferred types. Most of the proposed type inference systems have been based on the mechanism of row variables [Wand 1987], which are variables ranging over nite sets of eld types. Here, instead of using row variables, we base our development on the idea presented in Ohori and Buneman [1988] of placing restrictions on possible instantiations of type variables. We formalize this idea as a kind system of types and re ....
Wand, M. 1987. Complete type inference for simple objects. In Proceedings of the 2nd IEEE Symposium on Logic in Computer Science (Ithaca, New York). IEEE, New York, 37-44.
....apart from the type assertions needed in the de nition of a class, the type system has a static type inference similar to that available in ML. We develop such a type system by exploiting a form of type inference for labeled records and labeled disjoint unions originally suggested by Wand [Wan87] Labeled records and labeled disjoint unions are the structures that one naturally uses to implement a class hierarchy. For example, to implement a subclass in object oriented languages one usually adds instance variables to those of the parent class; but one can equally well think of this as ....
....described in this paper (with the exception of class parameterization) has been implemented at University of Pennsylvania. The core of the language, i.e. the language without class 2 construct, was described in [OBBT89] A more detailed description of the language can be found in [BO90] Wand [Wan87] observed that method inheritance can be supported in an MLlike strongly typed language by extending ML s type inference mechanism to labeled records and labeled disjoint unions. In this paradigm, classes correspond to record types and inheritance is realized by polymorphic typing of functions on ....
M. Wand. Complete type inference for simple objects. In Proc. Symp. on Logic in Computer Science, pages 37-44, 1987.
....by allowing an object of one type to have its supertypes. This usage of ISA relation can be regarded as an approximation to polymorphic typing in programming with records. Recent years have seen that polymorphic type inference for records provides a better alternative for method sharing [Wan87, JM88, OB88, Rem89] In this paradigm, the fact that Employee can inherit a method de ned on Person corresponds the property that the method is polymorphic so that it can also be applicable to elements of Employee. Since type inference directly captures the polymorphic nature of a method ....
M. Wand. Complete type inference for simple objects. In Proceedings of the Second Annual Symposium on Logic in Computer Science, pp. 37-44, Ithaca, New York, June 1987.
....Mitchell 1991] However, we feel that override is an important operation that it is characterized by peculiar typing rules; we prefer to study it directly and not to explain it away at an early stage. Similarly, the choice of objects with a fixed number of components, instead of extensible ones [Wand 1987; Mitchell, Honsell, Fisher 1993; Abadi 1994] is a conscious one. Without ruling out future work on extensible objects, we feel that fixed size objects are easier to handle, particularly in the later stages of our type theoretical development. Finally, we do not provide an operation to extract a ....
M. Wand. Complete type inference for simple objects. Proc. 2nd Annual IEEE Symposium on Logic in Computer Science.
No context found.
Mitchell Wand. Complete type inference for simple objects. In Proceedings, Symposium on Logic in Computer Science, pages 37--44. IEEE, 1987.
No context found.
M. Wand. Complete type inference for simple objects. In Proceedings, Symposium on Logic in Computer Science, pages 37--44. IEEE, 1987.
No context found.
Mitchell Wand. Complete Type Inference for Simple Objects. In Proceedings of Second IEEE Symposium on Logic in Computer Science, pages 37-44, 1987. Corrigendum in Proceedings of Third IEEE Symposium on Logic in Computer Science.
No context found.
M. Wand. Complete type inference for simple objects. Proc. IEEE Symp. on Logic in Computer Science 1987, 1987. A corrigendum appeared at LICS 1988.
No context found.
Mitchell Wand. Complete type inference for simple objects. In D. Gries, editor, Second Symposium on Logic In Computer Science, pages 207-276, Ithaca, New York, June 1987. IEEE Computer Society Press.
No context found.
Mitchell Wand. Complete type inference for simple objects. In Proc. 2nd IEEE Symposium on Logic in Computer Science, pages 37--44, 1987.
No context found.
M. Wand. Complete type inference for simple objects. In Proc. of the IEEE Symposium on Logic in Computer Science (LICS), Ithaca, New York, pages 37--44, 1987.
No context found.
Wand, M. Complete type inference for simple objects. In IEEE Symposium on Logic in Computer Science, June 1987.
No context found.
M. Wand. Complete Type Inference for Simple Objects. In Proc. of IEEE Symp.
No context found.
M. Wand. Complete Type Inference for Simple Objects. In LICS '87, 37--44. IEEE Press, 1987.
First 50 documents Next 50
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