 
    rpnjcalc manual
    rpnjcalc is a RPN calculator implemented in javascript and
    html. It is platform independent and requires only a javascript
    capable webbrowser. 
    RPN stands for Reverse Polish Notation. Reverse Polish
    Notation was developed in 1920 by Jan Lukasiewicz as a way to
    write a mathematical expression without using parentheses and
    brackets.
    Why should I use RPN?
    
      - RPN saves time and keystrokes. You never have to account
      for the parentheses while doing calculations. The process is
      similar to the way you learned math on paper.
- You can see the intermediary results as you perform your
      computations rather than just the answer at the end. This is
      an extremely helpful byproduct. Math teachers are using this
      feature to improve student understanding of mathematics
- An intermediate result allows the user to check the
      results and correct errors more easily. It's easier to follow
      the stream of calculation. The user defines the priority of
      operators.
- RPN is logical because the user first gives the number
      and then tells what to do with it.
- Because subexpressions are evaluated as they are entered,
      entry errors are more obvious with RPN. On an algebraic
      calculator, omitting an opening parenthesis, may not lead to
      a calculation error until much later when an entire
      subexpression is evaluated.
RPN is something that you will have to learn but once you
    understood it and used it you will not use any other calculator
    anymore.RPN became popular through the HP calculators and there is
    today a whole fan club around these HP calculators. Most HP calculators are collectors items
and are sold for very  high prices.
See e.g http://www.hpmuseum.org/.
    Unsing rpnjcalc
    rpnjcalc is platform independent however the DOM/javascript
    standard complience is not the same in all browsers. rpnjcalc
    works with Mozilla, MS IE, Firebird and Opera. In Netscape 4 and
    Konqueror the pure calculator works but the keyboard interface
    does not work. 
    A very detailed explanation on how to use RPN can be found
    at: http://www.hpmuseum.org/rpn.htm.
    In short: You use RPN just like you have been told in school
    when you manually resolved an equation on paper. You have the stack
(LIFO, last in first out, registers: X, Y, A, B, C) to store intermediate results. Let's take an example.
      3 + 5
   -----------
   16 - (2 * 6)
    You could start to evaluate this term at the numerator but
    normally you would start with the more complex term, the
    denominator, in this case. This is also what you do on an RPN
    calculator: 
    Type: 2, enter, 6, *
    You just calculated (2 * 6). Note that the numbers are entered
    first and then you say what to do with them (* = multiply). You
    see immediately the result in the display: 12
    Continue with: 16, swap, -
    You have just calculated: 16 - (2 * 6)=4. Now go to the
    numerator.
    Type: 3, enter, 5 +
    You have now calcualted 3+5 and you have result form the
    denominator (4) still in the stack at position Y.
    Type: swap, /
    ... and you are done: The result is: 2
    The specifics of rpnjcalc
    You can either operate this calculator with mouse clicks or
    you can use the keyboard.
    However some web-browsers have keyboard shortcuts which may
    conflict with the keys used by this calculator. Therefore you
    need to place the mouse over the textarea below the calculator (click once,
the field will become dark gray).
    The avaliable keyboard short cuts are documented in 
    the textarea. Numbers and all basic mathematical operators are
    available as keyboard shortcuts.
    More rarly used functions are only available as buttons
    (click with the mouse). This is also to avoid that the keyboard
    interface become too komplex to learn.
    Function buttons:
    
      - stoX -- store the value of X in the register next to the
      stoX button for later use.
- rclX -- recall the value and write it to X
- undo -- undo one step
- lastX -- restore the last value of X
- swap -- swap X and Y
- mode:rad/deg -- switch between rad (sin PI=0) and deg
      (sin 180=0)
- C -- clear X and write 0 into X.
- <-- -- delete the last digit of the number just
      entered
- pop -- move the stack one evel down
- enter -- push the stack one level up
- E and E- -- this is to enter numbers as num*10^something
      or num*10^-something
Real HP RPN calculators
rpnjcalc is very nice for occasional calculations but it is
nothing compared to a real HP calculator (such at the old
HP15c, HP42, HP48...). The precision of those HP calculators
is much higher than the mathematical precision that a web-browser
offers. HP calculators are also programmable which is not the case
for rpnjcalc. 
Have fun with rpnjcalc but if you ever get
the chance to buy a real HP then don't miss it. I have really fallen
in love with my HP calculators and I still find the algebraic logic to be a bit lame. RPN is just a lot more elegant.
    
    This rpnjcalc documentation was written by Guido Socher, guido
    at linuxfocus dot org, Copyright: GPL