Wrapper Semantics of an Object-Oriented Programming Language with State

The semantics of class inheritance has first been given in operational form (method-lookup-semantics). While this semantics is well suited for implementing object-oriented programming languages, it may conceal the true nature of inheritance. The development of denotational semantics for object-oriented languages has culminated in object creation as fixed point operation. Cook gave a semantics on this basis, using so called wrappers. This semantics abstracts from the internal state of objects (instance variables).

[1]  Michael J. C. Gordon,et al.  The denotational description of programming languages - an introduction , 1979 .

[2]  Gerald J. Sussman,et al.  Structure and interpretation of computer programs , 1985, Proceedings of the IEEE.

[3]  Mario Wolczko Encapsulation, delegation and inheritance in object-oriented languages , 1992, Softw. Eng. J..

[4]  Philip Wadler,et al.  Comprehending monads , 1990, LISP and Functional Programming.

[5]  J. Roger Hindley,et al.  Introduction to combinators and λ-calculus , 1986, Acta Applicandae Mathematicae.

[6]  A. Tarski A LATTICE-THEORETICAL FIXPOINT THEOREM AND ITS APPLICATIONS , 1955 .

[7]  William R. Cook,et al.  A denotational semantics of inheritance , 1989 .

[8]  Dana S. Scott,et al.  Data Types as Lattices , 1976, SIAM J. Comput..

[9]  Matthias Felleisen,et al.  On the Expressive Power of Programming Languages , 1990, ESOP.

[10]  Samuel N. Kamin Inheritance in smalltalk-80: a denotational definition , 1988, POPL '88.

[11]  Jens Palsberg,et al.  A Denotational Semantics af Inheritance and its Correctness , 1989 .

[12]  Mario Wolczko,et al.  Semantics of Smalltalk-80 , 1987, ECOOP.

[13]  Adele Goldberg,et al.  SmallTalk 80: The Language , 1989 .

[14]  Stanley B. Zdonik,et al.  Inheritance as an Incremental Modification Mechanism or What Like Is and Isn't Like , 1988, ECOOP.

[15]  Alan Snyder Encapsulation and inheritance in object-oriented programming languages , 1986, OOPSLA 1986.

[16]  Joseph E. Stoy,et al.  Denotational Semantics: The Scott-Strachey Approach to Programming Language Theory , 1981 .

[17]  Jens Palsberg,et al.  A Denotational Semantics of Inheritance and its Correctness , 1989, OOPSLA.

[18]  Peter Wegner,et al.  The Object-Oriented Classification Paradigm , 1987, Research Directions in Object-Oriented Programming.

[19]  Michael J. C. Gordon,et al.  The Denotational Description of Programming Languages , 1979, Springer New York.

[20]  Henk Barendregt,et al.  The Lambda Calculus: Its Syntax and Semantics , 1985 .

[21]  D. A. Turner,et al.  Miranda: A Non-Strict Functional language with Polymorphic Types , 1985, FPCA.

[22]  Uday S. Reddy,et al.  Objects as closures: abstract semantics of object-oriented languages , 1988, LISP and Functional Programming.

[23]  Andreas V. Hense The denotational semantics of an object oriented programming language , 1990 .

[24]  Robin Milner,et al.  A proposal for standard ML , 1984, LFP '84.