RPN

E812222

RPN is a mathematical notation in which every operator follows all of its operands, eliminating the need for parentheses and simplifying expression evaluation, especially in stack-based calculators and computing.

All labels observed (2)

Label Occurrences
RPN canonical 1
RPN (reverse Polish notation) 1

How this entity was disambiguated

Statements (48)

Predicate Object
instanceOf expression notation ⓘ
mathematical notation ⓘ
advantage efficient for stack machines ⓘ
no need for operator precedence rules during evaluation ⓘ
simple evaluation algorithm ⓘ
unambiguous expression representation ⓘ
alsoKnownAs Polish postfix notation ⓘ
postfix notation ⓘ
basedOn stack data structure ⓘ
commonIn early stack-based virtual machines ⓘ
handheld scientific calculators of Hewlett-Packard ⓘ
comparedTo infix notation ⓘ
prefix notation ⓘ
disadvantage can be harder to read for complex expressions ⓘ
less familiar to many users than infix notation ⓘ
eliminatesNeedFor parentheses in most expressions ⓘ
evaluationComplexity linear in expression length ⓘ
evaluationMethod push operands then apply operators ⓘ
follows operands-before-operator order ⓘ
fullName Reverse Polish Notation ⓘ
hasProperty expression can be evaluated in one left-to-right pass ⓘ
no need for parentheses when operator arity is fixed ⓘ
operators consume operands from stack ⓘ
results are pushed back onto stack ⓘ
historicalOrigin derived from Polish notation concepts ⓘ
isUsedIn Forth programming language ⓘ
linked to: Forth

HP calculators ⓘ
PostScript language ⓘ
linked to: PostScript

RPL (Reverse Polish Lisp) ⓘ
computer science ⓘ
expression parsing ⓘ
programming language interpreters ⓘ
stack-based calculators ⓘ
stack-based evaluation algorithms ⓘ
namedAfter Polish logician Jan Łukasiewicz (indirectly) ⓘ
linked to: Jan Łukasiewicz
operatorPosition after all operands ⓘ
relatedAlgorithm shunting-yard algorithm ⓘ
simplifies expression evaluation ⓘ
supports binary operators ⓘ
functions with multiple arguments ⓘ
unary operators ⓘ
typicalExample "3 4 + 5 *" represents (3 + 4) * 5 ⓘ
"3 4 +" represents 3 + 4 ⓘ
"3 4 5 * +" represents 3 + 4 * 5 ⓘ
usedFor arithmetic expressions ⓘ
logical expressions ⓘ
stack machine instruction sequences ⓘ
usedToRepresent output of shunting-yard algorithm ⓘ

How these facts were elicited

Referenced by (2)

Full triples — surface form annotated when it differs from this entity's canonical label.

RPL programming language → influencedBy → RPN (reverse Polish notation) ⓘ
linked to: RPN