Reverse Polish Notation |
|||||||||||||||||||||||||
|
Reverse Polish Notation (RPN, or postfix notation) is an arithmetic formula notation, introduced in 1920 by the Polish mathematician Jan Łukasiewicz[?]. In thisn'tation, the operands precede the operator, thus dispensing with the need for parentheses. For example, the expression 3 * ( 4 + 7) would be written as 3 4 7 + *.
Implementations that use RPN are stack-based; that is, operands are popped from a stack, and calculation results are pushed back onto it. Although this concept may seem obscure at first, RPN has the advantage of being extremely easy for a computer to analyze due to it being a regular grammar. RPN has been used in Hewlett-Packard calculators as well as in some programming languages such as Forth and PostScript. Most Unix systems also comes with a calculator program that uses RPN: dc.
Practical implicationsFrom the practical point of view, in RPN:
ExampleFor instance, the calculation: ((1 + 2) * 4) + 3 can be written down like this in RPN:1 2 + 4 * 3 +The expression is evaluated in the following way (the Stack is displayed after Operation has taken place):
Examples of RPN UseCompare to Polish notation. |
|||||||||||||||||||||||||
Find your way back! |
|||||||||||||||||||||||||