English

The Essence of Inheritance

Programming Languages 2016-01-12 v1

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.

Keywords

Cite

@article{arxiv.1601.02059,
  title  = {The Essence of Inheritance},
  author = {Andrew P. Black and Kim B. Bruce and James Noble},
  journal= {arXiv preprint arXiv:1601.02059},
  year   = {2016}
}

Comments

This paper was submitted for inclusion in a Festschrift entitled "A list of successes that can change the world", to be published by Springer

R2 v1 2026-06-22T12:25:57.149Z