# all returns true if there is anything at all in the stack
[ size
  0 <
  ]
  all =
  drop

# returns true if the last item on the stack is greater than the
# total number of items in the stack.  If you want to add everything
# on the stack for example, you would do 
#
# [ + 2 allbut ! ] while
#
# which would go until there is one item left on the stack. and
# therefore leave the stack with a single item - the sum of all values

[ size > 
  ]
  allbut =
  drop

[
  [ drop
    all !
    ] while
] clear =
  drop
 
