Jump to content

Reification (computer science)

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by 69.17.59.251 (talk) at 02:44, 18 January 2007. The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Reification is the act of making an abstract concept or low-level implementation detail of a programming language acce\ ssible to the programmer.

For example,

Programs written in either C or Scheme make use of both memory addresses and continuations. However, Scheme does not reify memory addresses and C does not reify continuations (unless one counts accessing the stack by pointer arithmetic as is done when smashing the stack).


In the context of object-oriented programming, reification describes the act of making a data model for a previously abstract concept. Reification allows a computer to process an abstraction as if it were any other data. Reification is a useful technique in object-oriented languages, as encapsulating an abstract behaviour in an object makes it easier to isolate that behaviour to do unit tests.

The term has also been used by some in the context of formal methods to mean refinement.

See also

Template:Comp-prog-stub