# $EPIC: push,v 1.2 2001/08/06 17:04:50 jnelson Exp $
Synopsis:
   $push(<variable name> <data>)

Technical:
   * If the <variable name> argument is omitted the empty string is returned.
   * <variable name> should be the name of an ASSIGN variable.
   * If the rvalue of <variable name> is the empty string, then the rvalue of
     <variable name> is set to <data>.
   * Otherwise, the rvalue of <variable name> is set to the present value of
     <variable name> plus a space, plus <data>.
   * The new rvalue of <variable name> is the return value

Practical:
   Push adds a new word to the end of $<variable name>, which is considered
   a variable containing a word list.  It is equivalent to the following:
   	@ <variable_name> #= (<variable_name> ? [ ] : []) ## data

   This function is useful to append a word to the end of a word list, which
   you might do to create a FIFO, LIFO, or other ordered queues.  The reverse
   of push is pop and the inverse is unshift, while the inverted
   reverse is shift.

   If <variable name> doesn't exist before you push something onto it,
   then it is created automatically for you.

Returns:
   The new value of $<variable name>.  

Examples:
   $push(blah hello there)            adds "hello there" to end of $blah

History:
   This function first appeared in "+7" (post-ircII, pre-EPIC)

See Also:
   pop(5); shift(6); unshift(6)

