A couple weeks ago I had a go at implementing an RPN calculator in Ruby. I knew I wanted the calculator to function by popping operands out of an array populated with the values of the input expression, operating upon the operands with the appropriate operator, and pushing the result back into the stack of operands.
I was able to implement this in version 1, but it took forever and the resulting code was not very beautiful. Why?
-
I started coding before I had a thorough understanding of RPN
Wait,
20 10 5 4 + * -
is what now?