Well, it’s easier to build because it has a terse syntax that requires fewer symbols, doesn’t need precedence and associativity rules, and has no ambiguous instructions. It’s easier to use for the same reasons.
Really? What do you call an operator applied to an empty stack? A sequence of commands that leaves the stack non-empty? I don't see why that's any less ambiguous than mismatched parentheses.
That’s actually a feature. It’s even fundamental in concatenative programming languages such as FORTH and Factor.
[Pi] for example is an operator which can push the value of Pi onto an empty stack.