abstract data type
(ADT) A kind of data abstraction where a type’s internal form is hidden behind a set of access functions. Values of the type are created and inspected only by calls to the access functions. This allows the implementation of the type to be changed without requiring any changes outside the module in which it is defined.
Objects and ADTs are both forms of data abstraction, but objects are not ADTs. Objects use procedural abstraction (methods), not type abstraction.
A classic example of an ADT is a stack data type for which functions might be provided to create an empty stack, to push values onto a stack and to pop values from a stack.
Reynolds paper (http://cis.upenn.edu/~gunter/publications/documents/taoop94.html).
Cook paper “OOP vs ADTs” (http://wcook.org/papers/OOPvsADT/CookOOPvsADT90.pdf).
- Abstract expressionism
a movement in experimental, nonrepresentational painting originating in the U.S. in the 1940s, with sources in earlier movements, and embracing many individual styles marked in common by freedom of technique, a preference for dramatically large canvases, and a desire to give spontaneous expression to the unconscious. Contemporary Examples At the most fundamental level, abstract expressionism […]
- Abstract language
noun vocabulary that signifies a concept, quality, or abstract idea Examples Examples of abstract language include love, success, freedom, good. Historical Examples Not by a surgical operation; much less by the use of a foreign language or—what is quite the same thing—of abstract language. Picture-Work Walter L. (Walter Lowrie) Hervey
- Abstract interpretation
abstract interpretation theory A partial execution of a program which gains information about its semantics (e.g. control structure, flow of information) without performing all the calculations. Abstract interpretation is typically used by compilers to analyse programs in order to decide whether certain optimisations or transformations are applicable. The objects manipulated by the program (typically values […]
- Abstract machine
abstract machine 1. A processor design which is not intended to be implemented as hardware, but which is the notional executor of a particular intermediate language (abstract machine language) used in a compiler or interpreter. An abstract machine has an instruction set, a register set and a model of memory. It may provide instructions which […]