=CMD =COMMAND swap (value value) value value =DESC Swaps the order of the top two items on the stack. =ENDDESC =EX trace2(swap(1 2)) #prints '2 1' =ENDEX =ENDCMD =CMD =COMMAND dup (value) value value =DESC Duplicates the item currently on the stack without removing the original item. =ENDDESC =EX trace2(42 dup) #prints '42 42' =ENDEX =ENDCMD =CMD =COMMAND dup2 (value value) value value value value =DESC Duplicates the top two items currently on the stack without removing the original pair. =ENDDESC =EX trace4(42 1 dup2) #prints '42 1 42 1' =ENDEX =ENDCMD =CMD =COMMAND pop (value) =DESC Removes the item at the top of the stack. =ENDDESC =EX 42 pop #stack is now empty =ENDEX =ENDCMD =CMD =COMMAND ClearStack =DESC Remove all items from the stack leaving it empty. =ENDDESC =EX 1 2 3 ClearStack #Stack is now empty =ENDEX =ENDCMD =CMD =COMMAND StackSize value =DESC Returns the number of items currently on the stack =ENDDESC =EX 1 2 3 trace(StackSize) #prints '3' =ENDEX =ENDCMD