Abstract Definition
A stack is a basic computer science data structure and can be defined in an abstract, implementation-free manner, or it can be generally defined as a linear list of items in which all additions and deletion are restricted to one end that is Top.
This is a VDM (Vienna Development Method) description of a stack:
Function signatures:
init: -> Stack push: N x Stack -> Stack top: Stack -> (N U ERROR) remove: Stack -> Stack isempty: Stack -> Boolean(where N indicates an element (natural numbers in this case), and U indicates set union)
Semantics:
top(init) = ERROR top(push(i,s)) = i remove(init) = init remove(push(i, s)) = s isempty(init) = true isempty(push(i, s)) = falseRead more about this topic: Stack (abstract Data Type)
Famous quotes containing the words abstract definition, abstract and/or definition:
“What is important, then, is not that the critic should possess a correct abstract definition of beauty for the intellect, but a certain kind of temperament, the power of being deeply moved by the presence of beautiful objects.”
—Walter Pater (18391894)
“If the world would only build temples to Machinery in the abstract then everything would be perfect. The painter and sculptor would have plenty to do, and could, in complete peace and suitably honoured, pursue their trade without further trouble.”
—Wyndham Lewis (18821957)
“... we all know the wags definition of a philanthropist: a man whose charity increases directly as the square of the distance.”
—George Eliot [Mary Ann (or Marian)