ACM Transactions on Programming Languages and Systems (TOPLAS)
Abstraction and specification in program development
Abstraction and specification in program development
A shared view of sharing: the treaty of Orlando
Object-oriented concepts, databases, and applications
The semantics of second-order lambda calculus
Information and Computation
A modest model of records, inheritance, and unbounded quantification
Information and Computation - Selections from 1988 IEEE symposium on logic in computer science
POPL '90 Proceedings of the 17th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
F-bounded polymorphism for object-oriented programming
FPCA '89 Proceedings of the fourth international conference on Functional programming languages and computer architecture
Lisp and Symbolic Computation
Systems programming with Modula-3
Systems programming with Modula-3
Eiffel: the language
Component software: beyond object-oriented programming
Component software: beyond object-oriented programming
POPL '85 Proceedings of the 12th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
The C++ Programming Language
The Integration of Object-Oriented Programming Languages
The Integration of Object-Oriented Programming Languages
Programming ADA
A Theory of Objects
Algebraic Specification Techniques in Object Oriented Programming Environments
Algebraic Specification Techniques in Object Oriented Programming Environments
A semantic model of types for applicative languages
LFP '82 Proceedings of the 1982 ACM symposium on LISP and functional programming
An investigation of a programming language with a polymorphic type structure.
An investigation of a programming language with a polymorphic type structure.
Algorithmic abstraction via polymorphism in object-oriented programming languages
Algorithmic abstraction via polymorphism in object-oriented programming languages
Method driven model: a unified model for an object composition language
ACM SIGPLAN Notices
Type Theory and Language Constructs for Objects with States
Electronic Notes in Theoretical Computer Science (ENTCS)
Hi-index | 0.00 |
It is well known that class and type are two different concepts in object-oriented programming languages (OOPLs). However, in many popular OOPLs, classes are used as types. In this paper, we argue that the class-is-type principle is a major obstacle to software reuse, especially to object reuse. The concepts of the basic entities, i.e., objects, object classes, object types, and object kinds, in the type hierarchy of OOPLs are revisited. The notion of object reuse is defined and elaborated. In addition, we show that parameterized types and generic functions are better served by used kind-bounded quantification than universal quantification and other mechanisms.