A Theory of Objects - Martin Abadi, Luca Cardelli

A Theory of Objects

Buch | Hardcover
396 Seiten
1996
Springer-Verlag New York Inc.
978-0-387-94775-4 (ISBN)
246,09 inkl. MwSt
By developing object calculi in which objects are treated as primitives, this title explains both the semantics of objects and their typing rules, and demonstrates how to develop various important concepts of object-oriented programming languages: self, dynamic dispatch, classes, inheritance, protected and private methods, prototyping, and more.
Procedural languages are generally well understood and their formal foundations cast in the forms of various lambda-calculi. For object- oriented languages however the situation is not as clear-cut. In this book the authors propose and develop a different approach by developing object calculi in which objects are treated as primitives. Using object calculi,the authors are able to explain both the semantics of objects and their typing rules and demonstrate how to develop all of the most important concepts of object-oriented programming languages: self, dynamic dispatch, classes, inheritance, protected and private methods, prototyping, subtyping, covariance and contravariance, and method specialization. Many researchers and graduate students will find this an important development of the underpinnings of object-oriented programming.

Prologue.- Review: Object-Oriented Features.- 1 Object Orientation.- 2 Class-Based Languages.- 3 Advanced Class-Based Features.- 4 Object-Based Languages.- 5 Modeling Object-Oriented Languages.- I: Untyped and First-Order Calculi.- 6 Untyped Calculi.- 7 First-Order Calculi.- 8 Subtyping.- 9 Recursion.- 10 Untyped Imperative Calculi.- 11 First-Order Imperative Calculi.- 12 A First-Order Language.- II: Second-Order Calculi.- 13 Second-Order Calculi.- 14 A Semantics.- 15 Definable Covariant Self Types.- 16 Primitive Covariant Self Types.- 17 Imperative Calculi with Self Types.- 18 Interpretations of Object Calculi.- 19 A Second-Order Language.- III: Higher-Order Calculi.- 20 A Higher-Order Calculus.- 21 A Language with Matching.- Epilogue.- APPENDIX: Rules and Proofs.- A Fragments.- A.1 Simple-Objects Fragments.- A.2 Other Typing Fragments.- A.3 Other Equational Fragments.- B Systems.- C Proofs.- C.1 Proof of the Variance Lemma from Section 13.3.- C.2 Proof of the Variance Lemma from Section 16.4.- C.3 Deriving the Rules for ?-Objects from Section 15.1.2.- C.4 Denotational Soundness of Equational Rules.- List of Figures.- List of Tables.- List of Notations.- List of Languages.

Reihe/Serie Monographs in Computer Science
Zusatzinfo XIII, 396 p.
Verlagsort New York, NY
Sprache englisch
Maße 155 x 235 mm
Themenwelt Mathematik / Informatik Informatik Programmiersprachen / -werkzeuge
Informatik Software Entwicklung Objektorientierung
Informatik Theorie / Studium Compilerbau
ISBN-10 0-387-94775-2 / 0387947752
ISBN-13 978-0-387-94775-4 / 9780387947754
Zustand Neuware
Haben Sie eine Frage zum Produkt?
Mehr entdecken
aus dem Bereich
Entwicklung von GUIs für verschiedene Betriebssysteme

von Achim Lingott

Buch (2023)
Hanser, Carl (Verlag)
39,99
objektorientierte Entwicklung modularer Maschinen für die digitale …

von Thomas Schmertosch; Markus Krabbes; Christian Zinke-Wehlmann

Buch | Hardcover (2024)
Hanser (Verlag)
44,99
Grundlagen, Objektorientierung und fortgeschrittene Konzepte

von Christian Kohls; Alexander Dobrynin

Buch (2023)
Carl Hanser (Verlag)
39,99