Object-Oriented Programming A Unified Foundation - Giuseppe Castagna

Object-Oriented Programming A Unified Foundation

Buch | Hardcover
366 Seiten
1997
Birkhauser Boston Inc (Verlag)
978-0-8176-3905-1 (ISBN)
106,99 inkl. MwSt
by Luea Cardelli Ever since Strachey's work in the 1960's, polymorphism has been classified into the parametric and overloading varieties. Parametric polymorphism has been the subject of extensive study for over two decades. Overloading, on the other hand, has often been considered too ad hoc to deserve much attention even though it has been, in some form, an ingredient of virtually every programming lan­ guage (much more so than parametric polymorphism). With the introduction of object-oriented languages, and in particular with multiple-dispatch object-oriented languages, overloading has become less of a programming convenience and more of a fundamental feature in need of proper explanation. This book provides a compelling framework for the study of run-time over­ loading and of its interactions with subtyping and with parametric polymorphism. The book also describes applications to object-oriented programming. This new framework is motivated by the relatively recent spread of programming languages that are entirely based on run-time overloading; this fact probably explains why this subject was not investigated earlier. Once properly understood, overloading reveals itself relevant also to the study of older and more conventional (single­ dispatch) object-oriented languages, clarifying delicate issues of covariance and contravariance of method types, and of run-time type analysis. In the final chapters, a synthesis is made between parametric and overloading polymorphism.

I Introduction.- 1 Background and notation.- 2 A quick overview.- II Simple typing.- 3 Object-oriented programming.- 4 The ?&-calculus.- 5 Covariance and contravariance: conflict without a cause.- 6 Strong Normalization.- 7 Three variations on the theme.- 8 Interpretation of object-oriented languages.- 9 Imperative features and other widgets.- 10 Semansttics.- III Second order.- 11 Introduction to part III.- 12 Second order overloading.- 13 Second order overloading and object-oriented programming.- 14 Conclusion.- IV Appendixes.- A Specification of KOOL.- A.1 Terms.- A.2 Pretypes.- A.3 Subtyping.- A.4 Auxiliary Notation.- A.5 Typing Rules.- B Formal definition of the translation.- B.1 Without mutually recursive methods.- B.2 With recursive methods.- B.3 Overloaded functions.- B.4 Correctness of the type-checking.

Erscheint lt. Verlag 1.1.1997
Reihe/Serie Progress in Theoretical Computer Science
Zusatzinfo XVIII, 366 p.
Verlagsort Secaucus
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-8176-3905-5 / 0817639055
ISBN-13 978-0-8176-3905-1 / 9780817639051
Zustand Neuware
Haben Sie eine Frage zum Produkt?
Mehr entdecken
aus dem Bereich
objektorientierte Entwicklung modularer Maschinen für die digitale …

von Thomas Schmertosch; Markus Krabbes; Christian Zinke-Wehlmann

Buch | Hardcover (2024)
Hanser (Verlag)
44,99
Entwicklung von GUIs für verschiedene Betriebssysteme

von Achim Lingott

Buch (2023)
Hanser, Carl (Verlag)
39,99
Principles and Practice Using C++

von Bjarne Stroustrup

Buch | Softcover (2024)
Addison Wesley (Verlag)
85,95