English Dictionary
◊ STICK
stick
n 1: a length of wood; "he collected dry sticks for a campfire";
"the kid had a candied apple on a stick"
2: a small thin branch of a tree
3: a lever used by a pilot to control the ailerons and
elevators of an airplane [syn: {control stick}, {joystick}]
4: informal terms of the leg; "fever left him weak on his
sticks" [syn: {pin}, {peg}]
5: a policeman's club [syn: {truncheon}, {nightstick}, {billy},
{billystick}]
6: marijuana leaves rolled into a cigarette for smoking [syn: {joint},
{marijuana cigarette}, {reefer}]
7: threat of a penalty: "the policy so far is all stick and no
carrot"
v 1: fix, force, or implant; "lodge a bullet in the table" [syn:
{lodge}, {wedge}, {deposit}] [ant: {dislodge}]
2: stay put (in a certain place); "We are staying in Detroit;
we are not moving to Cincinnati"; "Stay put in the corner
here!" [syn: {stay}, {stick around}, {stay put}] [ant: {move}]
3: cause to protrude: stick one's hand out of the window";
"stick one's nose into other people's business" [syn: {put
forward}]
4: stick to firmly; "Will this wallpaper adhere to the wall?"
[syn: {adhere}, {hold fast}, {bond}, {bind}, {stick to}]
5: pierce with a thrust
6: pierce with something pointed
7: come or be in close contact with; "The dress clings to her
body"; "The shirt stuck to the athlete's sweaty chest"
[syn: {cling}, {adhere}, {cohere}]
8: saddle with something disagreeable or disadvantageous; "They
stuck me with the dinner bill"; "I was stung with a huge
tax bill" [syn: {sting}]
English Computing Dictionary
◊ DID YOU MEAN STACK?
stack
(See below for synonyms) A data structure for
storing items which are to be accessed in last-in first-out
order.
The operations on a stack are to create a new stack, to "push"
a new item onto the top of a stack and to "pop" the top item
off. Error conditions are raised by attempts to pop an empty
stack or to push an item onto a stack which has no room for
further items (because of its implementation).
Most processors include support for stacks in their
{instruction set architecture}s. Perhaps the most common use
of stacks is to store subroutine arguments and return
addresses. This is usually supported at the {machine code}
level either directly by "jump to subroutine" and "return from
subroutine" instructions or by {auto-increment} and
auto-decrement {addressing mode}s, or both. These allow a
contiguous area of memory to be set aside for use as a stack
and use either a special-purpose {register} or a general
purpose register, chosen by the user, as a {stack pointer}.
The use of a stack allows subroutines to be {recursive} since
each call can have its own calling context, represented by a
stack frame or {activation record}. There are many other
uses. The programming language {Forth} uses a data stack in
place of variables when possible.
Although a stack may be considered an {object} by users,
implementations of the object and its access details differ.
For example, a stack may be either ascending (top of stack is
at highest address) or descending. It may also be "full" (the
stack pointer points at the top of stack) or "empty" (the
stack pointer points just past the top of stack, where the
next element would be pushed). The full/empty terminology is
used in the {Acorn Risc Machine} and possibly elsewhere.
In a list-based or {functional language}, a stack might be
implemented as a {linked list} where a new stack is an empty
list, push adds a new element to the head of the list and pop
splits the list into its head (the popped element) and tail
(the stack in its modified form).
At {MIT}, {pdl} used to be a more common synonym for stack,
and this may still be true. {Knuth} ("The Art of Computer
Programming", second edition, vol. 1, p. 236) says:
Many people who realised the importance of stacks and queues
independently have given other names to these structures:
stacks have been called push-down lists, reversion storages,
cellars, dumps, nesting stores, piles, last-in first-out
("LIFO") lists, and even yo-yo lists!
[{Jargon File}]
(1995-04-10)