keystroke-programmable calculator

RPN-40 is a Reverse Polish Notation calculator with 40 keys (hence the name), each of them having a single purpose. That limits the number of features, but also makes operation very simple.

Ordinary calculations are performed like in any other RPN calculator: `384 ENTER 256 +`

, or for a more complex example: `3 ENTER 4 ENTER DUP * SWAP DUP * + SQRT`

. You can see the stack growing (in reverse) on the second line. About the only features that require explanation are memory slots and functions.

RPN-40 comes equipped with five memory slots labeled M1 to M5. To store a number in e.g. the third one, you'd type `42 STORE M3`

. Afterwards, pressing M3 will push the number 42 to the stack every time, until you store another number there.

(If you change your mind after pressing STORE, press any key *other* than a memory slot. It will cancel the command.)

RPN-40 also has 5 function slots, F1 to F5. To program one of them you proceed kind of like with memory slots: `DEF F1 DUP * SWAP DUP * + SQRT END`

. (You can see the code being compiled as it accumulates on the screen. If you get it wrong, just press END and try again.) After that, you can compute hypotenuses all day long with a single keystroke: `3 ENTER 4 ENTER F1`

.

Naturally, functions can call other functions and refer to memory slots. Don't make a function call itself though! That will just lock up the calculator, since there are no conditional operations. You can also change your mind right after pressing DEF: just press the same button again. Once you choose which function to define though, you must go ahead with it.

Once more trick for you: type `DEF F2 DUP ROT ROT + END`

. Now you can calculate Fibonacci numbers with: `1 ENTER 1 ENTER F2 F2 F2`

... And that's about it. Enjoy!

(Last updated: 6 August 2016)