Abstract
Polymorphic abstraction provides the ability to write programs that are independent of the form of the data over which they operate. There are a number of different categories of polymorphic expression-ad hoc and universal, which includes parametric and inclusion-all of which have many advantages in terms of code reuse and software economics. It has proved difficult to provide efficient implementations of polymorphism. Here, we address this problem and describe a new technique that can implement all forms of polymorphism, use a conventional machine architecture, and support nonuniform data representations. Furthermore, the method ensures that any extra cost of implementation applies to polymorphic forms only, and allows such polymorphic forms to persist over program invocations.
Original language | English |
---|---|
Pages (from-to) | 342-371 |
Number of pages | 30 |
Journal | ACM Transactions in Programming Languages and Systems |
Volume | 13 |
Issue number | 3 |
Publication status | Published - Jul 1991 |
Keywords
- DESIGN
- LANGUAGES
- THEORY
- MULTIPLE INHERITANCE
- MECHANISM