Application of OOP Type Theory: State, Decidability, Integragtion

Important strides toward developing expressive yet semantically sound type systems for object-oriented programming languages have recently been made by Cook, Bruce, Mitchell, and others. This paper focusses on how the theoretical work using F-bounded quantification may be brought more into the realm of actual language implementations while preserving rigorous soundness properties. We simultaneously address three of the more significant problems: adding a notion of global state, proving type-checking is decidable, and integrating the more widely implemented view that subclasses correspond to subtypes with the F-bounded view.

[1]  Samuel N. Kamin,et al.  Two semantic models of object-oriented languages , 1994 .

[2]  Luca Cardelli,et al.  A Semantics of Multiple Inheritance , 1984, Inf. Comput..

[3]  Jens Palsberg,et al.  A Denotational Semantics of Inheritance and Its Correctness , 1994, Inf. Comput..

[4]  Luca Cardelli,et al.  Subtyping recursive types , 1991, POPL '91.

[5]  Kim B. Bruce,et al.  Safe and decidable type checking in an object-oriented language , 1993, OOPSLA '93.

[6]  Luca Cardelli,et al.  A Semantics of Multiple Inheritance , 1984, Information and Computation.

[7]  Jonathan P. Seldin,et al.  A sequent calculus for type assignment , 1977, Journal of Symbolic Logic.

[8]  William R. Cook,et al.  Inheritance is not subtyping , 1989, POPL '90.

[9]  Benjamin C. Pierce,et al.  Bounded quantification is undecidable , 1992, POPL '92.

[10]  Scott F. Smith,et al.  An interpretation of typed OOP in a language with state , 1995, LISP Symb. Comput..

[11]  John C. Mitchell,et al.  F-bounded polymorphism for object-oriented programming , 1989, FPCA.

[12]  Robert Hieb,et al.  The Revised Report on the Syntactic Theories of Sequential Control and State , 1992, Theor. Comput. Sci..

[13]  Andreas V. Hense Wrapper Semantics of an Object-Oriented Programming Language with State , 1991, TACS.

[14]  Didier Rémy,et al.  Type inference for records in natural extension of ML , 1994 .

[15]  Matthias Felleisen,et al.  A Syntactic Approach to Type Soundness , 1994, Inf. Comput..

[16]  Giorgio Ghelli A static type system for message passing , 1991, OOPSLA 1991.

[17]  John C. Mitchell Toward a typed foundation for method specialization and inheritance , 1989, POPL '90.

[18]  Carolyn L. Talcott,et al.  1 Equivalence in Functional Languages with E ectsIan , 2007 .

[19]  Kim B. Bruce Safe type checking in a statically-typed object-oriented programming language , 1993, POPL '93.