this post was submitted on 07 Dec 2023
540 points (87.7% liked)

Asklemmy

44136 readers
1092 users here now

A loosely moderated place to ask open-ended questions

Search asklemmy ๐Ÿ”

If your post meets the following criteria, it's welcome here!

  1. Open-ended question
  2. Not offensive: at this point, we do not have the bandwidth to moderate overtly political discussions. Assume best intent and be excellent to each other.
  3. Not regarding using or support for Lemmy: context, see the list of support communities and tools for finding communities below
  4. Not ad nauseam inducing: please make sure it is a question that would be new to most members
  5. An actual topic of discussion

Looking for support?

Looking for a community?

~Icon~ ~by~ ~@Double_[email protected]~

founded 5 years ago
MODERATORS
 
you are viewing a single comment's thread
view the rest of the comments
[โ€“] [email protected] 3 points 1 year ago (2 children)

What's rpn and how does base 12 work.

Don't you still have "numbers" between 11 and 12?

[โ€“] [email protected] 15 points 1 year ago

You would have numbers 0-9 plus two more digits (could use A and B, but any two symbols will do). The advantage is being able to cut things in thirds and quarters as well as in half. Cutting by a sixth is a bonus, as well.

RPN (reverse polish notation) is a different way of doing arithmetic where the order you write it naturally determines the order of operations. Do you know those Facebook memes where people get different answers for seemingly simple math equations? RPN does away with that. There is one and only one right way to interpret an RPN equation, and you don't have to remember any order of operation rules to do it.

[โ€“] [email protected] 1 points 1 year ago* (last edited 1 year ago)

Here's a practical explanation of RPN.

Take the simple expression 1 + 1. The plus sign is between the two operands; this is called infix notation and it's what you're probably familiar with. If we wanted to make this more complex, e.g. 1+(2*3), we'd need parentheses to say which part was supposed to be done first.

Reverse Polish Notation (RPN) means you write the two operands and then the operator, i.e. 1 1 +. Writing more complex equations is as simple as putting another expression in place of one of the numbers: 1 2 3 * +. To see how you'd evaluate this without any parentheses, imagine that as you go through an RPN expression from left to right, you keep a stack of sheets of paper, each with a number written on it, that starts out empty. As you go through, you see:

  • 1, put that on top of the stack
  • 2, put that on top of the stack
  • 3, put that on top of the stack (from top to bottom, the stack is now 3, 2, 1)
  • multiply, take the top two numbers on the stack (2 and 3), multiply them, and put the result back on the stack (the stack now has two numbers, 6 on the top and 1 on the bottom)
  • add, take the top two numbers on the stack, add them, and put the result back (the stack now only has one number on it: 7)

If we wanted to rewrite that expression to be (1+2)*3 instead, we could write: 1 2 + 3 *

Simply by reordering the symbols, we change the meaning of the expression, so there's never any need for parentheses.

As a bonus, this method of writing equations is a lot easier for computers to parse than infix notation, since they think in terms of stacks anyway. They can be (and often are) programmed to parse infix notation anyway, because infix notation is a lot easier for humans to wrap their brains around, but it's much easier to program them to interpret RPN which is why a lot of older calculators and software (like the programming language FORTH) use RPN exclusively.

Let me know if that explanation made sense.