| A. Ohori and P. Buneman. Static type inference for parametric classes. In OOPSLA, pages 445--456, Oct. 1989. |
....of polymorphism. Milner [17] introduced the notion of polymorphic type inference, which is fundamental to the ML programming language. The original type checking algorithm did not address object oriented programming languages with their type hierarchies and inheritance, but subsequent work [20, 22] extends Hindley Milner typechecking to OO languages and to many other application domains. Polymorphic type inference for object oriented languages can be roughly categorized according to the task that it supports (reverse engineering or optimization) the variety of polymorphism (data or ....
....polymorphism. Abstract interpretation deals well with data polymorphism, since the goal is to determine what types may appear in a particular variable. Type system. The language s type system affects the analysis that must be performed on it. In a dynamically or implicitly typed language [20, 22, 21, 15, 10, 7, 1, 2], data polymorphism is implicit and elimination of type checks is a major motivation. However, there is little room for standard type analysis. Statically typed languages take advantage of compile time type checking. Type inference or reconstruction [17, 20, 15, 25] must be used even for ....
[Article contains additional citation context not shown here]
A. Ohori and P. Buneman. Static type inference for parametric classes. In Proceedings of the Conference on Object-Oriented Programming Systems, Languages, and Applications (OOPSLA), pages 445--456, New York, NY, 1989. ACM Press.
.... languages are presented in [13, 11] Slide 86 Type inference for simple subtyping is developed in [69, 102, 59, 74, 105, 55, 104] Slide 88 94 Class inference is developed in [101, 45, 79, 76, 4] Slide 96 ML modules are described in [67, 106] Slide 97 Approaches to genericity are discussed in [63, 49, 61, 73, 83]. Annotated Bibliography 104 Slide 98 Multi methods are presented in [53, 72, 24, 25] Slide 99 The Self language is described in [108, 26, 27, 28, 48, 3] ....
Atsushi Ohori and Peter Buneman. Static type inference for parametric classes. In Proc. OOPSLA'89, Fourth Annual Conference on Object-Oriented Programming Systems, Languages and Applications, pages 445--456. ACM, 1989.
.... from a class, one would have to explicitly include the method list of the superclass (as it is done also in [2] Various calculi of records that are iextensiblej in some sense have been studied, starting with Wand s one [49] some initial diOEculties with principal typing were later solved, see [26, 36, 41, 51]) For instance, various forms of record concatenation, symmetric or asymmetric, have been considered, see [25, 42, 50] In this paper we have chosen to use, mainly for a simplicity reason, a strict version of Cardelli and Mitchell s calculus [12] with a ( 6 ) and also obviously Wand s model, ....
A. Ohori, P. Buneman, Static type inference for parametric classes, in [24], 121-147.
....We believe that this integration will open up the possibility of transferring various recent results in type theory to object oriented database programming. For example, it is not hard to integrate the class structures we have developed with parametric classes for objectoriented programming [OB89] Another interesting issue is abstract characterization of views. In developing a systematic translation for a language with views and classes into a language without them, we noticed an intriguing similarity between certain operations associated with Monads in category theory and our ....
A. Ohori and P. Buneman. Static type inference for parametric classes. In Proceedings of ACM OOPSLA Conference, pp. 445-456, New Orleans, Louisiana, October 1989.
....appear to be straightforward given a definition for least upper bounds with respect to . Expressions denoting empty collections are not allowed. Their admission complicates type checking since C; A Setfg : Set( for any type . One approach to this problem is to use conditional type schemes [13] such that C; A e : ae such that all possible typings are instances of ae. UML models contain dynamic information expressed via sequence, collaboration, statechart and activity diagrams which must be shown to be consistent with static information. In each case the diagram can be given a ....
Ohori, A., & Buneman, P.: Static type Inference for Parametric Classes. Proceedings of the 1989 ACM Conference on Object-Oriented Programming Systems Languages and Applications, pp 445 -- 456.
....a field (of type Int since it is added to G. Castagna. Sous typage et programmation orient ee a objets 90 3) Thus M is assigned the type schema 8ff:ff ff with ff hh : Intii (which can be noted by 8ff hh : Intii:ff ff) This is the approach used, for example, in [EST95a, EST95b, OB89] A different solution consists in using inside the type schema special variables representing the other fields that the actual parameter of the function may possess: M : 8ae:hh : Int; aeii hh : Int; aeii From a practical point of view this is obtained by adding functional constants to the ....
A. Ohori and P. Buneman. Static type inference for parametric classes. In OOPSLA '89, pages 445--455, 1989.
....occurrences of Object by Boolean, including those in Array. Thus, Stack acts like a parameterized class but is just a class, not a second order entity. This enables gradual generic instantiations, as demonstrated below. The use of parameterized classes is the traditional approach to genericity [38, 39, 50, 34, 49, 42]. Similar constructs are found in conventional procedural languages, for example Ada generic packages [24] and parameterized Clu clusters [35] A parameterized class is a second order entity which is generically instantiated to specific classes when actual type parameters are supplied. ....
Atsushi Ohori and Peter Buneman. Static type inference for parametric classes. In Proc. OOPSLA'89, Fourth Annual Conference on Object-Oriented Programming Systems, Languages and Applications, pages 445--456. ACM, 1989.
....should never fail in an unanticipated way. Strong typing is motivated by the principle that semantic analysis should be simple, but there are other reasons for desiring it. While it is true that, if a language is suitably designed, the compiler can infer types in the absence of type declarations [9, 10], and that type inference is convenient for interactive and prototyping languages [11] untyped programs are not suitable for production software. The benefit from automatic type inference is that programs are slightly shorter. The loss is that programs are harder to understand and compile. With a ....
A. Ohori and P. Buneman. Static type inference for parametric classes. In N. Meyrowitz, editor, Proc. ACM Conf. on Object-Oriented Programming Systems, Languages and Applications, pages 445--456, 1989.
....a field (of type Int since it is added to G. Castagna. Sous typage et programmation orient ee a objets 84 3) Thus M is assigned the type schema 8ff:ff ff with ff hh : Intii (which can be noted by 8ff hh : Intii:ff ff) This is the approach used, for example, in [EST95a, EST95b, OB89] A different solution consists in using inside the type schema special variables representing the other fields that the actual parameter of the function may possess: M : 8ae:hh : Int; aeii hh : Int; aeii From a practical point of view this is obtained by adding functional constants to the ....
A. Ohori and P. Buneman. Static type inference for parametric classes. In OOPSLA '89, pages 445--455, 1989.
....function oriented language in which the compiler is able to infer the types of all procedures and expressions and do static type checking with virtually no type declarations. Researchers have attempted to extend ML style type inference to object oriented languages, with some success [15, 16, 23, 24]. However, most of these approaches use type systems that describe an object s interface or protocol, rather than the object s representation or method dictionary. While this higher level view of an object s type is best for flexible polymorphic type checking, it provides little information for an ....
Ohori, A., and Buneman, P. Static Type Inference for Parametric Classes. In OOPSLA '89 Conference Proceedings. Published as SIGPLAN Notices, 24, 10 (1989) 445-456.
....knowledge, there seems to be no static type system that combines an objected oriented language with the dynamic method invocation mechanism in a type safe manner. Several researchers have been elaborating foundational models for statically typed object oriented languages [Car88, CCH 89, OB89, Mit90, Rem94, PT94, HP95, AC96, BSvG95, BPF97] but the dynamic method invocation mechanism is not incorporated into the proposed models. In an object oriented language embedded in calculus, a dynamic message can be encoded by enclosing it in a function closure: a dynamic message msg(a) is ....
A. Ohori and P. Buneman. Static type inference for parametric classes. In Proceedings of ACM OOPSLA conference, pages 121--148, 1989.
....easily written as a first class object. Tsuiki proposed a calculus m [Tsu92, Tsu93, Tsu94a] which is a simply typed calculus enriched with subtyping, coercion and merge operator. Merge operator is provided by generalizing from record merge operator of the extension of ML type system with record [OB88, Wan89]. In m , the notion of merge to functions is introduced and it is good natured in the sense that the behavior 8 CHAPTER 2. SURVEY OF POLYMORPHISM #include stream.h #include strings.h class human public: int id; char name[30] enum male , female sex; void print( class student:public ....
Ohori, A., and P. Buneman, Static type inference for parametric classes, ACM conference on Object Oriented Programming Systems,Languages, and Applications, pp. 445--455, 1989.
....Sandberg introduces descriptive classes as an alternative to subclassing [26] Descriptive classes are used to avoid passing procedure parameters. Ohori and Buneman combine parameterized classes and inheritance with static type inference, though disallowing reimplementation of inherited procedures [23]. Language designs with both parameterized classes and inheritance include Eiffel [21] Trellis Owl [27] and Demeter [15] Instantiation of parameterized classes is less flexible than inheritance, since any class can be inherited but is not in itself parameterized. In other words, code reuse ....
Atsushi Ohori and Peter Buneman. Static type inference for parametric classes. In Proc. OOPSLA '89, Fourth Annual Conference on ObjectOriented Programming Systems, Languages and Applications, pages 445--456. ACM, 1989.
....is a statically typed function oriented language in which the compiler is able to infer the types of all procedures and expressions and do static type checking with virtually no type declarations. Researchers have attempted to extend type inference to object oriented languages, with some success [Wan87, Wan88, Wan89, OB89, Rou90]. These approaches use type systems that describe an object s interface or protocol, not the object s representation or implementation. This abstract view of an object s type is best for flexible polymorphic typechecking, but provides little information for an optimizing compiler to speed ....
Atsushi Ohori and Peter Buneman. Static Type Inference for Parametric Classes. In OOPSLA'89 Conference Proceedings, pp. 445-456, New Orleans, LA, October, 1989. Published as SIGPLAN Notices 24(10), October, 1989.
....inadvertent clashes of labels, which can be useful in practice. Both systems have the property that the type checker must keep track of which component of a merge has a given field, leading to problems in type reconstruction. Ohori and Buneman studied type inference for object oriented programming [18] and for database programming languages [19] another promising application area for record type systems. In their work on database programming languages they consider a type system including records and sets, with operations such as relational join chosen to support database applications. To ....
....with purely positive information, with purely negative information, or with a mixture of positive and negative information is an important point of variation among calculi of record operations. Ordinary bounded quantification [6] F bounded quantification [1] and the systems of Ohori and Buneman [18, 19] are positive information systems. Cardelli and Mitchell s calculus [4, 5] and our earlier symmetric system [10] are mixed positive and negative. Wand s system of row variables [28] and jj are pure negative information systems. The differences among these classes of systems are particularly ....
Atsushi Ohori and Peter Buneman. Static type inference for parametric classes. In OOPSLA '89: Object-Oriented Programming Systems, Languages, and Applications, Conference Proceedings, pages 445--456, October 1989.
....combined database may provide some general purpose merging techniques. Abstract Types and Classes. While we have covered some aspects of object oriented databases, we have not dealt with the most important aspect of classes in object oriented programming: that of abstraction and code sharing. In [OB89] statically typed polymorphic class declarations are described. The implementation type of a class is normally a record type, whose fields correspond to the instance variables in object oriented terminology. That methods correctly use the implementation type is done through checking the ....
A. Ohori and P. Buneman. Static type inference for parametric classes. In Proceedings of ACM OOPSLA Conference, pages 445--456, New Orleans, Louisiana, October 1989.
....We believe that this integration will open up the possibility of transferring various recent results in type theory to object oriented database programming. For example, it is not hard to integrate the class structures we have developed with parametric classes for objectoriented programming [OB89] Another interesting issue is abstract characterization of views. In developing a systematic translation for a language with views and classes into a language without them, we noticed an intriguing similarity between certain operations associated with Monads in category theory and our operations ....
A. Ohori and P. Buneman. Static type inference for parametric classes. In Proceedings of ACM OOPSLA Conference, pp. 445--456, New Orleans, Louisiana, October 1989.
No context found.
A. Ohori and P. Buneman. Static type inference for parametric classes. In OOPSLA, pages 445--456, Oct. 1989.
No context found.
A. Ohori and P. Buneman "Static Type Inference for Parametric Classes" SIGPLAN Notices 24, 10 ( October 1989 ) pp. 445 - 456
No context found.
Atsushi Ohori and Peter Buneman. Static type inference for parametric classes. In OOPSLA '89: Object-Oriented Programming Systems, Languages, and Applications, Conference Proceedings, pages 445--456, October 1989.
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