I’ve never used an HP calculator, so I’ve never used Reverse Polish Notation. In my job I write programs using a sequential language I’ve been using for a dozen years, so I’m quite used to the normal algebraic layout where the operator follows the operand and using parentheses where required (or not required, for clarity). I’ve heard that RPN is more ‘logical’ and less prone to error than the usual method.
Here’s an example.
1 + 2 x 3 = ?
By the order of operations, 2 and 3 would be multiplied and 1 added afterward. 2 x 3 = 6, plus 1 = 7. But what if the desired answer is 9? Add parentheses:
(1 + 2) x 3 = 9
I think most calculators know the order of operations, and so they would come up with 7 if you entered 1 + 2 x 3 [equals]. So if someone doesn’t know the OoO and assumes the equation is worked in written order they’ll get a ‘wrong’ answer. (i.e., they assume that 1 and 2 will be added first, and then multiplied by 3.)
AIUI — again, never having used it – to get 9 one would enter this in RPN:
3 [enter] 2 [enter] 1 + x
If you wanted the OoO answer of 7, one would enter:
1 [enter] 2 [enter] 3 x +
So to get the right answer per the OoO you enter the numbers sequentially (as in the first, possibly ambiguous, equation, and then enter the operators in reverse order. Is that correct? It seems much less intuitive to me, especially since I use parentheses to ensure that I’m doing things in the order I want to do them.
So RPN types: What is the appeal of RPN? Is it really useful, given that operational order can be specified simply by using parentheses? Is processing speed an issue? ISTM that the limiting factor is primarily how fast you can enter the numbers and symbols, rather than the speed of the processor. Is it a case of ‘It’s a geek thing. You wouldn’t understand.’? Can you give examples of why RPN is ‘better’ than the normal way?