Una máquina de pila procesa instrucciones al apilar y desapilar valores en una pila interna.
Un ejemplo sencillo de esto es una calculadora.
El argumento pasado a run(instructions) siempre será una cadena que contiene una serie de instrucciones.
El conjunto de instrucciones de la calculadora será el siguiente:
+: Extrae los últimos 2 valores de la pila, súmalos y coloca el resultado en la pila.-: Extrae los últimos 2 valores de la pila, resta el valor de abajo al que está en la cima y coloca el resultado.*: Extrae los últimos 2 valores, multiplícalos y coloca el resultado./: Extrae los últimos 2 valores, divide el que está en la cima entre el de abajo y coloca el resultado.DUP: Duplica (no multiplica por dos) el valor que está en la cima de la pila.POP: Extrae el último valor de la pila y descártalo.PSH: Se realiza cada vez que aparece un número como instrucción. Coloca el número en la pila."" ➞ 0
"5 6 +" ➞ 11
"3 DUP +" ➞ 6
"6 5 5 7 * - /" ➞ 5
"x y +" ➞ Invalid instruction: xgetValue() debe ser el valor que está en la cima de la pila.