DocumentCode
2697690
Title
Weak subtyping-yet another notion of inheritance
Author
Lowe, Welf ; Neumann, Rainer ; Trapp, Martin ; Zimmermann, Wolf
Author_Institution
Inst. fur Programmstrukturen und Datenorganisation, Karlsruhe Univ., Germany
fYear
1998
fDate
3-7 Aug 1998
Firstpage
333
Lastpage
345
Abstract
Reuse in polymorphic systems strongly depends on correct use of inheritance. There have been many efforts to check whether or not subtyping is correct. All of these approaches either restrict the use of inheritance customize the class hierarchies in an application specific way or use proof theoretical techniques. This is often too restrictive or even impossible-at least for practical use. In order to provide both flexibility and robustness the paper introduces the concept of weak conformance. This concept allows the specification of specialized classes that may be used in a polymorphic context. The main idea is to check conformance in the context of a concrete application. Furthermore, the paper demonstrates how the proposed concept can easily be integrated into any programming language and introduces an algorithm for checking robustness of an application. This algorithm detects all critical and illegal polymorphic method calls that may violate the robustness. Finally the paper discusses ways of handling critical calls, i.e., calls that can be proven correct by the developer but not by the type system
Keywords
inheritance; object-oriented programming; software reusability; critical call handling; critical polymorphic method call detection; illegal polymorphic method call detection; inheritance; polymorphic systems; reuse; robustness checking algorithm; specialized class specification; weak conformance; weak subtyping; Availability; Computer languages; Data structures; Electrical capacitance tomography; Functional programming; Libraries; Robustness;
fLanguage
English
Publisher
ieee
Conference_Titel
Technology of Object-Oriented Languages, 1998. TOOLS 26. Proceedings
Conference_Location
Santa Barbara, CA
Print_ISBN
0-8186-8482-8
Type
conf
DOI
10.1109/TOOLS.1998.711024
Filename
711024
Link To Document