The Essence of Inheritance
Abstract
Programming languages serve a dual purpose: to communicate programs to computers, and to communicate programs to humans. Indeed, it is this dual purpose that makes programming language design a constrained and challenging problem. Inheritance is an essential aspect of that second purpose: it is a tool to improve communication. Humans understand new concepts most readily by first looking at a number of concrete examples, and later abstracting over those examples. The essence of inheritance is that it mirrors this process: it provides a formal mechanism for moving from the concrete to the abstract.
- Publication:
-
arXiv e-prints
- Pub Date:
- January 2016
- DOI:
- 10.48550/arXiv.1601.02059
- arXiv:
- arXiv:1601.02059
- Bibcode:
- 2016arXiv160102059B
- Keywords:
-
- Computer Science - Programming Languages
- E-Print:
- This paper was submitted for inclusion in a Festschrift entitled "A list of successes that can change the world", to be published by Springer