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 and/or definition:
“Alice grown lazy, mammoth but not fat,
Declines upon her lost and twilight age;
Above in the dozing leaves the grinning cat
Quivers forever with his abstract rage....”
—Allen Tate (18991979)
“... 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)