Jump to content

Differential inheritance

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by KolbertBot (talk | contribs) at 19:32, 18 June 2018 (Bot: HTTP→HTTPS (v485)). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Differential inheritance is a common inheritance model used by prototype-based programming languages such as JavaScript, Io and NewtonScript. It operates on the principle that most objects are derived from other, more general objects, and only differ in a few small aspects; while usually maintaining a list of pointers internally to other objects which the object differs from.

An analogy

To think of differential inheritance, you think in terms of what is different. So for instance, when trying to describe to someone how Dumbo looks, you could tell them in terms of elephants: Think of an elephant. Now Dumbo is a lot shorter, has big ears, no tusks, a little pink bow and can fly. Using this method, you don't need to go on and on about what makes up an elephant, you only need to describe the differences; anything not explicitly different can be safely assumed to be the same.

See also