5 research outputs found
The theory of classification part 5: axioms, assertions and subtyping
The algebraic calculus for reasoning about the complete behavior of object types and the effects of axioms upon subtyping were analyzed. The translation of pure algebra into a piecemeal treatment in terms of variants, pre-, and post conditions was studied. The existing object subtyping rules were applied to derive subtyping rules governing the strengthening, or weakening of the assertions as there was a direct relationship between axiom strengthening, and subtyping. It was found that weaker preconditions co-existed with stronger invariants, and the same system satisfied the stronger of the two
The theory of classification part 11: adding class types to object implementations
A model of strongly-typed object generators, in which the class-type information was attached to the object-information was developed. A class was defined as a family of objects that shared a similar implementation strategy, and a family of types shared a similar method interface. It provided a good foundation for developing further model interpretations of other object-oriented concepts such as class hierarchies, abstract classes, and interfaces. A new typed calculus was also used to present a model of strongly-typed inheritance, and a formal obligation to demonstrate that aspects of inheritance were type-sound were also fulfilled
The theory of classification part 2: the scratch-built typechecker
The behavior of languages such as C++, Java, Smalltalk and Eiffel and the modeling features such classes, inheritance, polymorphism, message passing are discussed. The important theoretical approaches such as subtyping, F-bounds, matching and the object calculus are also discussed. A mathematical model was developed, that show the possibility of motivating the existence of something as relatively sophisticated as an object with a state and method. The two kind of type rules include: introduction rules that describes the formation of functions and records and elimination rules, describing the decomposition of constructions