Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/74877.74922acmconferencesArticle/Chapter ViewAbstractPublication PagessplashConference Proceedingsconference-collections
Article
Free access

A denotational semantics of inheritance and its correctness

Published: 01 September 1989 Publication History

Abstract

This paper presents a denotational model of inheritance. The model is based on an intuitive motivation of the purpose of inheritance. The correctness of the model is demonstrated by proving it equivalent to an operational semantics of inheritance based upon the method-lookup algorithm of object-oriented languages. Although it was originally developed to explain inheritance in object-oriented languages, the model shows that inheritance is a general mechanism that may be applied to any form of recursive definition.

References

[1]
Alan H. Borning and Tim O'Shea. Deltatalk: An empirically and aesthetically motivated simplification of the Smalltalk-80 language. In European Conf. on Object-Orien,ed Programming, pages 1- 10, 1987.
[2]
Luca CardeUi. A semantics of multiple inheritance. In Semantics of Data Types, LNCS 173, pages 51- 68. Springer-Verlag, 1984.
[3]
Luca Cardelli and Peter Wegner. On understanding types, data abstraction, and polymorphism. Computing Surveys, 17(4):471-522, 1985.
[4]
William Cook. A Deno~ational Semantics of inheritance. PhD thesis, Brown University, 1989.
[5]
Ole-Johan Dalai and Kristen Nyga~rd. The SIM- U~A 67 Common Base Language. 1970.
[6]
Adele Goldberg and Dave Robson. Smalltalk-80: the Language and Its Implementation. Addison- Wesley, 1983.
[7]
Michael J. C. Gordon. The Denotalional Description of Programming Languages. Springer-Verlag, 1979.
[8]
Samuel Kamin. Inheritance in Smalltalk-80: A denotational definition. In Proc. of Conf. on Principles of Programming Languages, pages 80-87, 1988.
[9]
D. McAllester and R. Zabih. Boolean classes. In Proc. A CM Conf. on Object-Oriented Programming: Systems, Languages and Applications, pages 417-423, 1987.
[10]
N. Minsky and D. Rozenshtein. A law-based approach to object-oriented programming. In Proc. A CM Conf. on Object-Oriented Programming: Systems, Languages and Applications, pages 482-493, 1987.
[11]
Peter Mosses and Gordon Plotkin. On proving limiting completeness. SIAM Journal of Computin9, 16:179-194, 1987.
[12]
Uday S. Reddy. Objects as closures: Abstract semantics of object-oriented languages. In Proc. A CM conf. on Lisp and Functional Programming, pages 289-297, 1988.
[13]
David A. Sehmidt. Denotational Semantics: A Methodology for Language Development. Allyn & Bacon, 1986.
[14]
Dana S. Scott. Data types as lattices. SIAM Journal, 5(3):522-586, 1976.
[15]
Alan Snyder. Encapsulation and inheritance in object-oriented programming languages. In Proc. A CM Conf. on Object-Oriented Programming: Systems, Languages and Applications, pages 38-45, 1986.
[16]
Lynn Andrea Stein. Delegation is inheritance. In Proc. A CM Conf. on Object-Oriented Programming: Systems, Languages and Applications, pages 138-146, 1987.
[17]
Joseph Stoy. Denotalional Semantics: The Scol~- Sirachey Approach to Programming Language Semantics. MIT Press, 1977.
[18]
Robert D. Tennent. On a new approach to representation-independent data classes. Acla Informatica, 8:315-324, 1977.
[19]
Robert D. Tennent. Denotational semantics of Hoare classes. Unpublished manuscript, 1982.

Cited By

View all

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
OOPSLA '89: Conference proceedings on Object-oriented programming systems, languages and applications
September 1989
528 pages
ISBN:0897913337
DOI:10.1145/74877
  • cover image ACM SIGPLAN Notices
    ACM SIGPLAN Notices  Volume 24, Issue 10
    Special issue: Proceedings of the 1989 ACM OOPSLA conference on object-oriented programming
    Oct. 1989
    446 pages
    ISSN:0362-1340
    EISSN:1558-1160
    DOI:10.1145/74878
    Issue’s Table of Contents
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 01 September 1989

Permissions

Request permissions for this article.

Check for updates

Qualifiers

  • Article

Conference

OOPSLA89
Sponsor:

Acceptance Rates

Overall Acceptance Rate 268 of 1,244 submissions, 22%

Upcoming Conference

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)75
  • Downloads (Last 6 weeks)17
Reflects downloads up to 15 Oct 2024

Other Metrics

Citations

Cited By

View all
  • (2022)A Calculus with Recursive Types, Record Concatenation and SubtypingProgramming Languages and Systems10.1007/978-3-031-21037-2_9(175-195)Online publication date: 25-Nov-2022
  • (2021)Compositional ProgrammingACM Transactions on Programming Languages and Systems10.1145/346022843:3(1-61)Online publication date: 3-Sep-2021
  • (2021)Taming the Merge OperatorJournal of Functional Programming10.1017/S095679682100018631Online publication date: 2-Nov-2021
  • (2017)Familia: unifying interfaces, type classes, and family polymorphismProceedings of the ACM on Programming Languages10.1145/31338941:OOPSLA(1-31)Online publication date: 12-Oct-2017
  • (2016)Object-oriented design pattern for DSL program monitoringProceedings of the 2016 ACM SIGPLAN International Conference on Software Language Engineering10.1145/2997364.2997373(70-83)Online publication date: 20-Oct-2016
  • (2016)The Essence of InheritanceA List of Successes That Can Change the World10.1007/978-3-319-30936-1_4(73-94)Online publication date: 25-Mar-2016
  • (2014)Why inheritance anomaly is not worth solvingProceedings of the 9th International Workshop on Implementation, Compilation, Optimization of Object-Oriented Languages, Programs and Systems PLE10.1145/2633301.2633307(1-12)Online publication date: 28-Jul-2014
  • (2013)What shall we tell the children (about inheritance)?Proceedings of the 5th Workshop on MechAnisms for SPEcialization, Generalization and inHerItance10.1145/2489828.2489831(17-25)Online publication date: 1-Jul-2013
  • (2013)Meta-theory à la carteACM SIGPLAN Notices10.1145/2480359.242909448:1(207-218)Online publication date: 23-Jan-2013
  • (2013)On model compatibility with referees and contextsSoftware and Systems Modeling (SoSyM)10.1007/s10270-012-0241-412:3(475-488)Online publication date: 1-Jul-2013
  • Show More Cited By

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Get Access

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media