Contents page

Index (83KB)


stack: n. The set of things a person has to do in the future. One
   speaks of the next project to be attacked as having risen to the
   top of the stack.  "I'm afraid I've got real work to do, so
   this'll have to be pushed way down on my stack."  "I haven't done
   it yet because every time I pop my stack something new gets
   pushed."  If you are interrupted several times in the middle of a
   conversation, "My stack overflowed" means "I forget what we were
   talking about."  The implication is that more items were pushed
   onto the stack than could be remembered, so the least recent items
   were lost.  The usual physical example of a stack is to be found in
   a cafeteria: a pile of plates or trays sitting on a spring in a
   well, so that when you put one on the top they all sink down, and
   when you take one off the top the rest spring up a bit.  See also
   push and pop.

At MIT, pdl used to be a more common synonym for stack in all these contexts, and this may still be true. Everywhere else stack seems to be the preferred term. Knuth ("The Art of Computer Programming", second edition, vol. 1, p. 236) says:

Many people who realized the importance of stacks and queues independently have given other names to these structures: stacks have been called push-down lists, reversion storages, cellars, nesting stores, piles, last-in-first-out ("LIFO") lists, and even yo-yo lists!