A Theory of Objects
Springer-Verlag New York Inc.
978-0-387-94775-4 (ISBN)
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? |
aus dem Bereich