The Museum of HP Calculators

HP Forum Archive 15

[ Return to Index | Top of Index ]

HP & RPN
Message #1 Posted by Antonio Maschio (Italy) on 16 Mar 2006, 5:11 a.m.

Hi everybody.

I want to know your opinion about this matter: HP & RPN

In the past years, HP was the leader in the calculators markets, and its machines were quite all RPN-based. If you wanted a calculator featuring RPN, you *had* to buy a HP product. Any other RPN products were hardly seen on the markets. Furthermore, Casio, Sharp and Texas Instruments produced only algebraic calculators, with more or less success, but the leader was HP.

Nowadays HP produces quite only algebraic calculators (of course, "produces" is a strong word, since all the calculators are made-up in China or so), and in its stock there's only one pure RPN calculator: HP 12C, a financial calculator; its follow-on, HP 12C Platinum, features both methods. The last pure scientific RPN based calculator was HP 32SII, and now it's gone; its follow-on, HP 33S, features both methods (and it's worse in quality).

Surely RPN is more difficult to learn than algebraic input, but only for the first, say, 2 days. Then it's faster and easier to use; RPN users get to the point that they cannot use algebraic machines again after they've learned RPN (I'm one of them).

Surely, intelligence is not lowering down, these days. And surely, people of the Seventies and Eighties were not more intelligent than people today (I hope). So I guess that people today *can* use RPN with no problems for their calculations. Do they *really* prefer algebraic machines? Or algebraic machines are their only choice?

And now the questions: 1. If HP once believed so much in RPN, why not today? 2. If HP once sold a lot of calculators and was the leader, why not today? 3. If we suppose HP gave up with calculators as a leading product, but still believing in RPN, HP calculators today should be pure RPN. Or should we suppose that HP gave up with RPN too? 4. Is RPN something that should be suggested/proposed to people, instead of producing calculators that are merely copies of TI or Casio products? I mean, is HP in the position to produce those golden years RPN calculators again, without being affected by "what will people say?" or "people won't buy this: it's too difficult!" ? 5. If today HP sold only RPN calculators, do you think it would sell less?

In other words, is there a link between RPN and HP leadership?

I wait for your opinion.

-- Antonio

P.S. Of course, one could cite the fact that previous calculators were better-designed and more robust (e.g. HP 11C and all the voyager/pioneer series), while today's calculators are probably worse, and not so robust (e.g. I own both HP 33S and HP 49g+: they are very cool, but got half the appeal of the voyager/pioneer ones); is this a consequence of the fact HP quite abandoned calculator markets (and/or that calculators are made up in China)?

      
Re: HP & RPN
Message #2 Posted by Valentin Albillo on 16 Mar 2006, 6:24 a.m.,
in response to message #1 by Antonio Maschio (Italy)

Hi, Antonio:

Some comments, as per your request. All that follows, IMO:

"Surely RPN is more difficult to learn than algebraic input, but only for the first, say, 2 days. Then it's faster and easier to use;"

    Strongly disagree. That's a myth, absolutely unfounded nowadays and 10 to 15 years earlier as well. This myth was once true, when algebraic input meant jurassic TI-style, i.e., one-line numeric display, no way to see your expression whole at a time, no way to correct for entry errors, no way to know if your parentheses were matched or not, etc. That was forced by the hardware and prices possible at the time, and RPN was so much better and elegant, not to mention it was the only possible solution for the limited hardware and desired functionality.

    Later on algebraics got bigger screens, sometimes much bigger (SHARP PC-1350's 4-line x 24-char display comes to mind), fully alphanumeric, you could see your whole expression at once, you could enter it essentially as written, no danger of losing data because of too many pending operations, you could edit it at leisure before pressing [ENTER] and also after computing the result, recalling the whole expression back for edition or trying out alternatives, or continue with new expressions that would chain to it, etc.

"RPN users get to the point that they cannot use algebraic machines again after they've learned RPN (I'm one of them)."
    I'm not. I'm every bit as proficient with RPN as with advanced algebraic models, always have been. The users you mention are the ones that truly believe in the myth, they're actually *blinded* by it, and are unable and unwilling to get out of the RPN grip. They can't objectively evaluate algebraic systems because of their inherent dislike and even despise of them, they associate "algebraic" with "four-banger" and tremble at the mere thought of not having RPN at hand. They've become RNP-fundamentalists, a kind of harmless fanatics, even addicts. A real pity. But harmless. And they tend to self-extinction.
"Surely, intelligence is not lowering down, these days. And surely, people of the Seventies and Eighties were not more intelligent than people today (I hope)."
    You're equating "intelligence" with "using and advocating RPN". Personally, I consider this insulting, unfounded, and unfair; matter of fact, perhaps you should re-evaluate at what side of the line intelligence lies. If being an RPN-addict, unable to even contemplate using any other system but their obsoleted one, is to be considered more "intelligent" than profitably using both RPN and algebraic, or even rationally chosing algebraic outright, then it seems to me that your definition of "intelligence" doesn't agree with mine, by far.

"So I guess that people today *can* use RPN with no problems for their calculations. Do they *really* prefer algebraic machines?

    Of course. Only a fool would seriously think that everyone but himself and his tribe are the fools. People, when given the choice of using obsolete, inefficient RPN style calculations (not to mention RPL) or a decent, advanced algebraic do not hesitate in the least. They do use algebraic.

    As a test case, my own daughter, Laura, knows how to use both, RPN and algebraic. But whenever she must do some calculation, for her homework for instance, she always grabs her SHARP PC-1350, because she fully realizes this is to her own advantage. She would run rings around you and your RPN calculator of choice for anything remotely non-trivial.

"If HP once believed so much in RPN, why not today?"
    Because it doesn't sell, at all, and HP is not a charity but tries to earn money for its shareholders.
"If HP once sold a lot of calculators and was the leader, why not today?"
    Because formerly engineer and professionals were the biggest market for the very expensive advanced calculators available, as there were no remotely affordable PCs then. Later on, every engineer and professional worth their salt switched to PCs and laptops, so the biggest market for calculators was educational. And there, TI and the rest or firms had already introduced themselves a mile thick, specially to teachers and authorities. Trying to enter that market with obsolete, arcane RPN systems was doomed to failure from the start.
"If we suppose HP gave up with calculators as a leading product, but still believing in RPN, HP calculators today should be pure RPN. Or should we suppose that HP gave up with RPN too?"
    Of course. What makes you think HP (or anybody else) is a fool ? RPN is obsolete, and RPN doesn't sell to the masses or even to minorities. Only to people *forced* to use it for technical exams, or used to its past glory, gone long since. Such diehard old-timers will be eventually gone too, they're a vanishing market.
"4. Is RPN something that should be suggested/proposed to people, instead of producing calculators that are merely copies of TI or Casio products?"
    RPN's only place is in a museum, like this one for instance. Using it dooms you to inefficiency and to plain obsolescence. Using it in class can be your number one headache if you're a student, and can certainly lower your grades and put you at a serious disadvantage if you stick to it long enough.

"5. If today HP sold only RPN calculators, do you think it would sell less?"
    Apart from the RPN HP-12C, popular among business people, and the HP33S, forced for people taking exams, they would sell nothing.
"In other words, is there a link between RPN and HP leadership?"
    I must be specially dense today because I don't even understand your question. HP was never "leader" because of RPN, but because of their overall quality. In the past, RPN was the best possible system given the hardware, a real godsend. Then RPN was quality. Now RPN is nothing, a jurassic system which has outlived its usefulness. Embracing RPN now would be tantamount to irrelevancy and sinking into oblivion even faster.
Best regards from V.

Edited: 16 Mar 2006, 6:50 a.m. after one or more responses were posted

            
Re: HP & RPN
Message #3 Posted by Thomas Okken on 16 Mar 2006, 6:45 a.m.,
in response to message #2 by Valentin Albillo

RPN is obsolete? RPN belongs in a museum?
Hmmm, well, let's see. Say I just finished some calculation. The result is in the display. Now I want to add 1 and multiply by 4...

    1 + 4 *

How much is 5 over that?

    5 X<>Y /

I could go on, but I expect the point is clear. This kind of interactive playing with numbers is easy and intuitive with RPN. On any algebraic, the same operations always take more keystrokes.
That's what people like about RPN, and the fact that that doesn't sell any more is because nobody knows about it any more. I suppose you could make the point that the only reason why RPN ever did sell is because in the days of yore, you had no choice: if you wanted a powerful, well-built calculator, HP was the only game in town, and HP meant RPN. A whole generation of engineers got RPN shoved down their throats -- and ended up being thankful for it.

"Harmless fanatics", indeed. Give us a bit more credit, pal. :-)

- Thomas

                  
Re: HP & RPN
Message #4 Posted by Valentin Albillo on 16 Mar 2006, 10:41 a.m.,
in response to message #3 by Thomas Okken

Hi, Thomas:

Thomas posted:

"Hmmm, well, let's see. Say I just finished some calculation. The result is in the display. Now I want to add 1 and multiply by 4..."

    Come on, man ! Are you serious !? No wonder RPN has such badmouthing, with painfully simplistic samples like that being repeated mantra-like through the decades! You can do much better ...
"On any algebraic, the same operations always take more keystrokes."
    Mantras again. Did you read my post carefully ? If you did, it certainly didn't register, uh ? :-)
Best regards from V.

Edited: 16 Mar 2006, 10:43 a.m.

                        
Re: HP & RPN
Message #5 Posted by Geir Isene on 16 Mar 2006, 11:21 a.m.,
in response to message #4 by Valentin Albillo

As for me, there is nothing that beats my HP-97 as the standard desktop calculator for my work. And RPN is one of the 5 major resons for that.

I wonder why some get so emotional about this. It's only a calculator ;) (I can see my friends looking surprisingly at me right now).

                        
Re: HP & RPN
Message #6 Posted by Thomas Okken on 16 Mar 2006, 11:28 a.m.,
in response to message #4 by Valentin Albillo

Quote:
Come on, man ! Are you serious !? No wonder RPN has such badmouthing, with painfully simplistic samples like that being repeated mantra-like through the decades! You can do much better...

Yes, I'm serious. I'm happy for all those who have "seen the light" and are now leading happier and more prosperous lives as AOS users, but some of us actually add 1 and multiply by 4 every now and then, and appreciate how easy RPN makes such tasks.

Quote:
"On any algebraic, the same operations always take more keystrokes."

Mantras again. Did you read my post carefully ? If you did, it certainly didn't register, uh ? :-)


Yes, Valentin, I did read your post carefully, and I'm disagreeing with your contention that RPN is obsolete. Instead of trying to dismiss my remarks by labeling them as "mantras", how about trying to prove me wrong? Let's see you do my examples with fewer keystrokes on an AOS machine, 71B, or whatever.

- Thomas

                              
Re: HP & RPN
Message #7 Posted by Valentin Albillo on 16 Mar 2006, 12:50 p.m.,
in response to message #6 by Thomas Okken

Hi again, Thomas:

Thomas posted:

"Yes, Valentin, I did read your post carefully, and I'm disagreeing with your contention that RPN is obsolete."

    You may disagree as much as you want. "Eppur" it *is* obsolete".

    RPN was good and okay when machines were so limited in hardware resources, most specially RAM, that there was no way they would execute some expression as written, just too many pending operations, too many registers needed to hold operands and operators, too difficult and expensive to parse the input into something internally executable and redisplayable afterwards, too difficult and expensive to allow for extensive recall and edition capabilities, not to mention alphanumerics and named variables.

    That being so, an elegant and workable solution was found: to split the work in half: the machine would actually do the calculations, one at a time, operating with numbers in a stack in a simple manner, and the user would be in charge of reading the expressions, parsing them into the RPN form the machine expected, then entering operands and operators following his/her human-produced RPN parsing. This collaboration saved much ROM and RAM, the final result was impressive in terms of efficiency and overall productivity, and everyone was happy.

    But time passes by, and ROM and RAM became cheaper, alphanumerics were commonplace, processors got faster. Now, having the person do the parsing and processing into RPN was no longer justifiable. The machine could read the expression as entered, do the parsing, place the arguments and operators into their proper internal places no matter how many were pending, and execute it all very fast. The machine would also recall the whole input, operands and operators and all for easy editing and reexecution if needed or chaining if desired. No need for the person to do these annoying chores, no need for the person to rethink the expression mentally to cater for necessary reordering to avoid overloading the stack.

    In other words, the machine now does all the work for me. I don't care at all where it places the numbers and operators or how does it arrange them internally, nor would I've ever wanted to do it myself were it not for the fact that the old alternatives were far worse. Would you write your programs in assembler, to take care of every little bit, all the time ? Or would you rather let the compiler do the hard work, and let you concentrate in what matters, your work ? Same here.

    Why on earth would I care for whether this or that thing is in Z, or T, just about to get lost or not, or whether I need an X<>Y or ROLLDOWN to place this or that operand at its proper position in the stack, for it all to work ? Wouldn't it be much better if those internal, low-level chores get assigned to low-level brains, such as the processor's while my higher-level brain is dedicated to the algorithm or work I'm trying to do ? Would you prefer to be thinking about currents and circuits or about stack levels ? Think about beams and stress or about LASTX ?

    That's why most people nowadays give RPN a miss. Would they consider doing part of the work for the machine ? No way.

"Instead of trying to dismiss my remarks by labeling them as "mantras", how about trying to prove me wrong? Let's see you do my examples with fewer keystrokes on an AOS machine, 71B, or whatever."
    See, Thomas. I don't know how long have you been frequenting this MoHP forum but this topic has been discussed an incredible number of times, and I've said all I have to say so many times before that I'm not for repeating time and again the same arguments. Do you think you're the first one to say what's quoted above to me ? You must be the one-thousandth at the very least !

    And it's useless. Like religious issues, you can never convert an RPN addict. They only see their mantras: "fewer keystrokes ... fewer keystrokes ... fewer keystrokes ...". It doesn't cross their minds that keystroke-counting might not be the most important measure of the capability and/or productiviy and/or ease of use of a computing paradigm. They think they know that "... fewer keystrokes ..." is their system's good point for sure, and don't ever consider the possibility that perhaps that's not true, or even if true, that it might not matter that much compared to other advantages or disadvantages.

    Am I going to waste even more of my time trying to convince you (as a thousand others), or giving you examples for the 1000th time ?

    Do your own homework. Search the archives. Convince yourself. Or not.

Best regards from V.

Edited: 16 Mar 2006, 12:55 p.m.

                                    
Re: Please stop this, Valentin
Message #8 Posted by Thomas Radtke on 16 Mar 2006, 1:48 p.m.,
in response to message #7 by Valentin Albillo

Quote:
Am I going to waste even more of my time trying to convince you (as a thousand others), or giving you examples for the 1000th time ?
If you do not wish to discuss his point or if you think you've already done it elsewhere then please give him/us a short note about it or don't post at all. No one wants to read dismissive remarks on serious contributions.

I certainly do not wish to get a reply to any of my contributions with the subject changed to 'don't make me laugh' or something similar. I won't make this an issue but you really carry this to excess these days. I was interested in this thread and want to follow it. I am interested in your opinion, too. But it makes me sad to see that every thread containing contributions you dislike gets screwed up.

No offense intended, just a plea for a more moderate attitude on your side.

Thomas

                                    
Re: HP & RPN
Message #9 Posted by Thomas Okken on 16 Mar 2006, 8:04 p.m.,
in response to message #7 by Valentin Albillo

Quote:
Am I going to waste even more of my time trying to convince you (as a thousand others), or giving you examples for the 1000th time ?

It seems to me that that is precisely what you *are* doing.

You state that present-day technology makes AOS much better than it used to be in, say, the TI-59 days. I agree.
You also state that RPN was used in earlier HP calcs because the technology of those days simply didn't support anything significantly better. I think that's probably true, too.

But why criticize people who *continue* to use those older technologies?
The reason why I usually walk to the grocery store, instead of taking the car, is because the grocery store is 100 meters from my front door -- not because I'm unaware of the advantages of the automobile.

Quote:
Like religious issues, you can never convert an RPN addict.

Like religious issues, you can never reason with an RPN hater? It's fine that *you* don't care about the fact that AOS requires more keystrokes, but you should maybe just learn to accept the fact that there are people who *do* care about that metric, and also accept that those people are not simply too dense to appreciate your point. They have a perfectly valid point of their own.

- Thomas

                                          
Re: HP & RPN
Message #10 Posted by Howard Owen on 16 Mar 2006, 8:44 p.m.,
in response to message #9 by Thomas Okken

Quote:

The reason why I usually walk to the grocery store, instead of taking the car, is because the grocery store is 100 meters from my front door -- not because I'm unaware of the advantages of the automobile.


The analogy I like is stick shift versus automatic transmission. Try making the following statement in any bar, at about 6:00 PM on Friday night:

Quote:
There's absolutely no reason to use a stick shift anymore. Modern automatic transmissions do a far better job of gear selection under any set of conditions you can name.

And stand back while a furor not unlike the one we have just seen kicked up here gets going.

The statement may (or may not) be factually true. It has little to do with which type of transmission people prefer.

Regards
Howard

Edited: 16 Mar 2006, 8:45 p.m.

                                          
Re: HP & RPN
Message #11 Posted by Valentin Albillo on 17 Mar 2006, 4:51 a.m.,
in response to message #9 by Thomas Okken

Hi, Thomas:

Thomas posted:

"It seems to me that that is precisely what you *are* doing."

    Yep, that's probably true ...
"Like religious issues, you can never reason with an RPN hater?"
    I sincerely hope you're not implying that I am an "RPN hater" because nothing could be further from the truth. I'm nearly 50 years old, and have strongly, passionately been into HP calculators for the last 30 years. Depending on your age, I might have been writing RPN code when you were wearing diapers, and, in any case, I've written more RPN code in that period, both for fun and for profit, than you would be able to write in your one life, or even two.

    If in doubt, just check my many RPN programs and articles (synthetics included) in PPC Journal, PPC Technical Notes, Datafile, and other publications, as well as several HP Solution Books (including a whole HP-34C Advanced Math Solutions Book), etc, etc. I can also send you references of my commercially written RPN software (architectural computations, engineering, etc), not to mention the many RPN solutions to challenges and snippets of RPN code I've posted here.

    If that qualifies me as an "RPN hater" to you or anyone else, then words have no meaning. Matter of fact, I think I'm in a privileged position, knowing both worlds inside out, to objectively judge them on their merits.

    On the reverse side of the coin, I wonder if you have that much experience using to the fullest modern algebraic systems, knowing their every trick and technique, to the point that you can make a rational and knowledgeable evaluation of their merits when compared to RPN.

    The bottom line is: I find it deeply irrational that many people who just know the one system, and have barely scratched the surface of the other system, if at all, feel nevertheless in possesion of the truth and claim it loud and clear for the world to know while adamantly refusing to make a reality check by getting to know the other system, to see by themselves if their claims hold or not, instead of taking refuge in their comfy beliefs of superiority. That's akin to self-inflicted blindness and seems most irrational to me.

Nevertheless, my apologies if anything I posted did offend you or anyone else, as it certainly wasn't my intention. My style can be quite "intense" at times, specially since, being a non-native English speaker, my command of the subtler finesses of the English language is utterly lacking.

Best regards from V.

                                                
Re: HP & RPN
Message #12 Posted by Thomas Okken on 17 Mar 2006, 6:09 p.m.,
in response to message #11 by Valentin Albillo

Quote:
Depending on your age, I might have been writing RPN code when you were wearing diapers, and, in any case, I've written more RPN code in that period, both for fun and for profit, than you would be able to write in your one life, or even two.

Well, you certainly have a high opinion of yourself. Or a pretty low one of me, I'm not sure which.

Quote:
On the reverse side of the coin, I wonder if you have that much experience using to the fullest modern algebraic systems, knowing their every trick and technique, to the point that you can make a rational and knowledgeable evaluation of their merits when compared to RPN.

So, your point is, you've been using calculators for a long, long time, and that must mean you're right and everyone who disagrees with you is wrong.
You are so convinced that your truth is the only one, that from my defending RPN, you immediately jump to the conclusion that I must have little or no knowledge of anything else:

Quote:
The bottom line is: I find it deeply irrational that many people who just know the one system, and have barely scratched the surface of the other system, if at all, feel nevertheless in possesion of the truth and claim it loud and clear for the world to know while adamantly refusing to make a reality check by getting to know the other system, to see by themselves if their claims hold or not, instead of taking refuge in their comfy beliefs of superiority. That's akin to self-inflicted blindness and seems most irrational to me.

You don't know me at all, and you have no way of knowing what the extent of my knowledge and experience in the calculator field might be. Of course, the strange thing is, that it doesn't even matter. I pointed out that RPN is keystroke-efficient. I claim that there are people who value that property, who find it natural and intuitive to enter numbers first and operators last, and who don't mind that they have to keep track of the order of evaluation themselves.
Whether I have written 10,000 lines of RPN code in my life or 10,000,000 makes no difference as to the validity of that point. I could brag about all the Java and C++ code I have written, for fun and for profit, or about my prize-winning pumpkins, and it would make no difference to the topic we were actually talking about.
(I'm kidding about the pumpkins.)

You are, of course, under no obligation to address, acknowledge, or even agree with my defense of RPN. As I said before, if you like AOS better, good for you. But the way you try to sweep my RPN defense off the table by trying to make me look like a clueless, ranting fanatic is just plain rude.

Quote:
Nevertheless, my apologies if anything I posted did offend you or anyone else, as it certainly wasn't my intention.

That apology would sound a little more sincere if it wasn't accompanied by even more insults, but it will have to do, I guess.
Apology accepted.

Now, back to work on the PocketPC version of Free42. Yes, an RPN calculator simulator, and hey, maybe I can spark off another flame war by mentioning I always write my code using vi.

(I'm kidding -- about the flame war, that is. :-) )

- Thomas

P.S. Anyone who is interested in beta-testing Free42/PPC, please drop me a line. I have no PocketPC myself, so I have to do all testing on a simulator; I would like to confirm that the new version works on a *real* PocketPC before I put it up on my web site.
Thanks!

Edited: 17 Mar 2006, 7:45 p.m.

                                    
RPN & command-line AOS
Message #13 Posted by Karl Schneider on 17 Mar 2006, 1:56 a.m.,
in response to message #7 by Valentin Albillo

Hello, Valentin --

Taking up the devil's-advocate argument against RPN again, I see! I would question how earnest your statements actually are. After all, if RPN were so primitive or loathsome, the attributes of HP's (former) high quality, robust mathematics, and top-notch documentation couldn't possibly have overcome it. But, I'm game for the "challenge of the argument".

I agree with the Thomases -- RPN will never be obsolete in handheld calculators, which tend to have limited, but easy-to-read displays. RPN beats old-fashioned AOS hands down, as everyone here would agree. However, calculators with command-line algebraic entry (AE) don't truly fulfill their objective.

The AE concept is straightforward: Allow the entry of entire expressions exactly as they appear on a working paper or in a book. When complete, the expression in the calculator's display can be quickly and easily compared to the printed one, then deemed correct, or edited if not. Then, the user evaluates the expression and obtains the final answer. No parsing or organizing by the user is needed. Simple enough?

Unfortunately, the approach doesn't work as well as intended, because the expression in the display generally doesn't match the expression on the page:

  • The display isn't wide enough to fully accommodate longer expressions without scrolling or wraparound.
  • Low dot-matrix resolution produces poor-quality superscripting and no subscripting.
  • Parentheses are used in place of the brackets and braces employed to distinguish nested expressions.
  • Function names are used in place of "typeset" symbolic representations.

So, the user is looking at the truncated expression in his display -- which might display "COMB(5,3)" or "5C3" in place of parenthesized 5 above 3, as well as groups of unmatched parentheses in place of matched braces and brackets -- and is then expected to ascertain whether it is correct. In an act of faith, he then hits "=", "ENTER", or "EVAL", and obtains a final result that was delivered without ever having paused at the way stations of intermediate results.

This approach hardly engenders my confidence. With RPN, however, I see each result as it is performed. On some alphanumeric models (41C, 42S, 32S, 32SII, 33S), I can even see the name of the operation before it is executed. Also, it is easier to combine the results of previous calculations.

Every AE system I have tried -- the HP-71B, equation editor on the HP-27S and HP-17B/BII, algebraic expressions on the HP-28/48/49, the Casio fx-115MS ("Visually Perfect Algebraic Method"), as well as the TI-86 and TI-89 -- suffers from one or more of the listed shortcomings. I know that there are other AE calc's from Sharp and Casio, but I also doubt that any of them achieves the ideal. It may be that only the high-end graphical PC software for mathematics -- e.g, Mathematica or Maple -- can meet the standard for elgeant symbolic representation of mathematical expressions.



This brings me to something more fundamental: The slogan "Just like you'd do it on paper" has been used to tout both RPN and AOS calc's. The statement is true for both in a certain sense, but it needs to be clarified:

  • AOS mimics how the expression is written on paper, letting the user simply keystroke exactly what he sees.
  • RPN, however, provides the true approach one would take to actually compute the expression on paper.

The distinction is significant. Assume that one is presented with a complicated expression -- such as the Mach number equation -- and is asked to solve it without using any electronic computational devices. Only a slide rule or Curta, trigonometric and logarithm tables, and pencil and paper, are permitted.

What to do? Start on the inside, where the operands are ready for evaluation. Then, work outward on both sides, one operation at a time. This is the RPN approach. The final result can be trusted, because each step was quality-controlled for reasonableness.

In the absence of a validated and debugged equation or program -- or a look-up table -- to provide the answer, this step-by-step method is the soundest approach to such a task.

Of course, the above is not a revelation to any of us, but it explains just why RPN will never become obsolete.

So there! :-)

Best regards,

-- KS

Edited: 19 Mar 2006, 11:55 p.m.

            
Re: HP & RPN
Message #14 Posted by Gene on 16 Mar 2006, 9:15 a.m.,
in response to message #2 by Valentin Albillo

Wow. We might as well be discussing religion. That would bring up just as heated a set of disagreements for sure! :-)

1) I agree with Valentin that the current "equation" style of entering long expressions in algebraic syntax has rendered some of the RPN/ALG argument moot. If you are solving something already written down, then the extra keypresses required for parentheses in these modes is more than offset by the ability to visually see the exact full expression and know that it contains all the operators, correct numbers, etc. If the calculating device also has a "command stack" ala HP71B style, that allows you to recover previous results, edit them and then re-evaluate them, all the better. The HP71B's CALC mode was also a very useful solving environment that I liked a lot.

2) I do not see why it matters to any of us whether HP produces RPN only machines vs. those that have both modes. Why do I care if HP produces the 33S with RPN and ALG modes? If that leads to more sales than RPN only, then that is a positive thing, IMO. I am certainly not a purist in this regard where I view the inclusion of ALG modes as some sort of betrayal (full disclosure...I am the one who added the algebraic mode examples to the HP12c platinum owners manual...and believe that is one of the better decisions HP has made).

3) If we are talking non-command line, typical AOS style entry vs. RPN, then a) RPN wins in terms of keystroke usage - you can solve a large majority of problems faster with fewer buttons pushed. b) RPN requires the user to preview the problem and evaluate where to start the processing. That's not always a bad thing, but it does require some effort on the user's part. c) Some of the examples the RPN community has used to showcase the wonderful nature of RPN (think of the mach number problem) have exaggerated the benefits of RPN. For example, it is possible to completely solve the mach number problem on a TI-30 from 1978.

d) RPN/ALG machines HP makes: HP12c platinum, HP33S, HP17bII+, HP48gII, HP49g+

e) Personal: what do I reach for when I have to compute something? My HP12c, since my computations are usually financial in nature. Why not use EMU-something? Because given the nature of the company I work for, we are by-and-large an Apple shop and those run on Windows. Otherwise, I might. :-)

So, I certainly feel that Valentin is very on the spot with machines that have a built-in mode such as he describes. However, if the machine only has RPN vs. classic AOS (which still exists on many machines), then I do still feel that RPN wins for speed.

                  
Re: HP & RPN
Message #15 Posted by Valentin Albillo on 16 Mar 2006, 9:43 a.m.,
in response to message #14 by Gene

Hi, Gene:

Gene posted:

"So, I certainly feel that Valentin is very on the spot with machines that have a built-in mode such as he describes. However, if the machine only has RPN vs. classic AOS (which still exists on many machines), then I do still feel that RPN wins for speed."

    Agreed, I think the same. But since circa 1980 there's been all kinds of powerful and very small (HP-15C size or less) command-line, fully-alphanumeric algebraic machines available, so if we're debating RPN vs algebraic, it's only fair that we compare similarly advanced models, not a 33S vs. a $0.60 four-function banger. Else we could as well use some primitive 3-level RPN models, or some Sinclair RPN calculators, with their weird RPN stacks and terrible stack manipulations, right ?

    Comparing an advanced RPN calc versus a four-banger algebraic is like a heavyweight vs. a flyweight, i.e., not fair, not allowed, and doesn't prove anything. Against a proper command-line algebraic, HP-71B-style or so, RPN has little to do.

Best regards from V.
                        
Re: HP & RPN
Message #16 Posted by Gene on 16 Mar 2006, 10:14 a.m.,
in response to message #15 by Valentin Albillo

True.

Personally, I wish HP had kept the "CALC" mode from the 71B. Joe Horn even once wrote an article in the PPC Journal titled "CALC > RPN" and I think he had many good points.

Now, back to my 12c. :-)

            
Re: HP & RPN
Message #17 Posted by Garth Wilson on 16 Mar 2006, 12:15 p.m.,
in response to message #2 by Valentin Albillo

Wow-- someone must have given Valentin yesterday's coffee for breakfast this morning! I'm disappointed. I won't address every point though.

The RPN v. AOS reception seem to have a lot to do with how an individual thinks, and may have partly to do with one's native language. In English, we say "buy food" for example with the verb preceding the object. Not so in Korean, where sentence structure is different and makes RPN seem very natural. I know this affects the reception of Forth, which seems all backwards to English-speakers, but not to Koreans. Although my first language is English (followed by Spanish and finally French), I was glad to find both RPN and Forth and get rid of those piles of parentheses and the pressure to go left to right when I don't think that way! I have both an HP41cx and an HP-71 within easy reach; and although the 71 is far more powerful, I much prefer the 41 as a calculator. The 41 & Advantage module is more clumsy with complex numbers so I usually reach for the 71 there, but it's not because of the algebraic entry. And I can hardly stand the 71's CALC mode!

The comparison I have made to people asking about the different approach is that algebraic shows what equation you're performing, while RPN shows how you get there. Both are valuable, but I usually prefer to put the algebraic form in the comments (if at all) and the RPN in the program.

As far as HP goes, I think they've just succumbed to the modern "instant gratification" mentality-- cheap, cool, no manual-reading, with no concern for tomorrow relating to durability or anything else.

            
Re: HP & RPN
Message #18 Posted by Jan on 16 Mar 2006, 12:17 p.m.,
in response to message #2 by Valentin Albillo

Pretty harsh attack on the RPN community. Take a valium, or (even better) a glass of good italian red wine: it's only about calcs you know. Yes, I am an RPN-dinosaur myself and I will continue to be. Or should I say I am an RPN-crocodile, after all crocs "walked" with dinosaurs and still refuse to go extinct today. I deal with AOS (oh folks I am so fit for the 21st century) and RPN in an equally easy way, although I prefer RPN for its flexibility. RPN is just more usefull for the "medium" calculations by hand I would say. No burden with counting parentheses such as when I am writing a computer-code in some (non-forth) programming language. There is also an educational benefit: you learn to read, interpret and understand complex formulas instead of retyping them on an AOS calc or PC. Unless you want to become a secretary it therefore can be very educational for kids at school. RPN obsolete? Come on, (RPN-based) forth is still THE language for embedded systems and will continue to be. Calcs only for school kids? No way, I am a scientist and my device is that if you cannot say at least something about a physical phenomenon with a piece of paper and a handheld calculator you don't have a clue about what is really going on. First write down a simple approximation, the true number crunching comes later.

            
Re: HP & RPN
Message #19 Posted by John Nguyen on 16 Mar 2006, 2:45 p.m.,
in response to message #2 by Valentin Albillo

My Jesus is better than your Mohammed.

My Linux OS is better than your Windows OS.

My HP calc is better than your TI calc.

RPN is better than AOS.

What's the best food? Movie? Music?

These are just some of the imponderables we face. However, to "dis" RPN in an HP forum is just madness. :) This can't be the reasonable and dispassionate Valentin Albillo of yore; must be his evil twin.

John

                  
Boxers or Briefs
Message #20 Posted by TF on 17 Mar 2006, 1:27 p.m.,
in response to message #19 by John Nguyen

RPN or AOS is sort of like Boxers or briefs. For a lot of us, what we wear was determined in a decision that was made a long time ago. And while they both perform their functions just fine, we certainly prefer one over the other. People can argue that one is better than the other with medical studies or other data to support those positions that one is better than the other. While it might be possible to make the switch form one to the other, most folk don't, and don't care to hear from others that they should switch.

On a slightly more serious note, AOS or RPN is a language of math for the calculator. Maybe somewhat analogous to the language we speak. While some folks can speak several languages, one is their native tongue and they are most efficient at speaking that and conveying the ideas they wish to convey. Therefore, for them, it is the best. I've heard that English is difficult to learn and doesn't make sense at times because of its inconsistencies and special conditions. However, even though my ramblings here might not show it, I am most efficient and confident speaking that language over others. That makes English superior in my little world. I would expect the French, German, and Spanish speaking folks to have a similar view of there own language fro similar reasons. However, in a sense, it doesn't really matter because English seems to becoming the universal language regardless if it is the best, most efficient, logical, or easiest to use language. There is hardly a place on the earth that one can go that doesn't have some English signage or where you can't find someone that speaks at least a little English. (In my travels anyway.) I donít know if the same can be said for the other languages. Does that make English universally superior? Can an idea be conveyed in the most efficient manner with English over another? Can an idea be expressed in fewer words with a language other than English? Someone might be able to try answer those questions, but, as far as Iím concerned, trying to would be as pointless as the argument between AOS and RPN.

For me, it's English since shortly (relatively speaking) after birth and RPN since the late 70's and boxers since the mid nineties.(See, it's not impossible to change.)

            
Re: HP & RPN
Message #21 Posted by James M. Prange (Michigan) on 16 Mar 2006, 6:33 p.m.,
in response to message #2 by Valentin Albillo

Okay, the last "advanced" algebraic/BASIC calculator that I've seriously used is my Sharp EL-5520, and no doubt advanced algebraic models have improved since then, but I very much doubt that they've improved to the point that I'd find one easier to use than an RPL model.

I found the 28S very easy and intuitive to use; in perhaps five minutes I could see that working through a problem in RPN was much easier (for me) than doing it on any other calculator that I'd ever tried. Learning to use RPL object types, variables, and program structures was a pleasure; at last, a calculator that worked the way I think.

Not having any way except for the keyboard to input anything to the 28S was indeed a disadvantage compared to the Sharp, but not enough to want to go back to the old way. The 48SX fixed that problem.

With the RPL models so easy and intuitive to use, why would I ever want to go back to using an algebraic model for an advanced calculator?

For students, there are reasons for preferring algebraic models. In many cases, that's all that their instructors know how to use, and that's what "everyone else" uses. Except for looking through the documentation or going online, one usually can't hope for much help in using an RPN model.

It may be that for some people, algebraic models match their way of thinking better than RPN models. That's not to say that they're less (or more) intelligent than me, just that we're different. If someone prefers to use an algebraic model or write a BASIC program, that's fine with me; I'll stick to doing things the way that I find easiest.

I agree that algebraic models sell better than HP's Classic RPN and RPL models, but I see that as a failure to market HP's calculators effectively, not as any inherent superiority of algebraic models. I expect that the main reason that most people prefer algebraic models is because that's the system they've already learned and is most easily available.

Besides the 12C and 33S RPN-only models, HP still markets the 48gII and 49g+, and I hope that it's selling some of them. How many users just leave them in the default ALG mode, I wouldn't know.

HP is indeed a "for-profit" corporation, and thus has a duty to its stockholders to try to make a reasonable profit, so including an "ALG" mode on recent models was a rational decision. Switching a 49 series to "RPN" mode turns out to be a trivial matter, so having an ALG mode available doesn't really matter to me, although it was a nasty surprise the first time that I turned on my 49G. On the other hand, if someone actually prefers algebraic mode, why not just buy a "Brand X" calculator?

But I also think that HP (like many other companies) all too often sacrifices long-term gain for short-term profit.

The quality that I'd come to expect from HP just isn't there in the 49 series, but I don't see that that's relevant to a discussion of the advantages of RPN versus AOS, although relevant to a discussion of the advantages of HP products versus other brands. For now, I'll stay with the 48 series when I just want to get some real work done.

With the RPL models, I can enter an algebraic expression (in the 48 an 49 series, in multi-line "textbook" style if I prefer), and let the compiler take care of working out the equivalent RPN sequence. That's great when I have the expression already written out in front of me. More often, I have the data in front of me, and know what I want to do with it, and I find working through it RPN-style more intuitive, faster, and generally just a lot easier than working out the algebraic expression first. Why should I have to go through the extra trouble of composing an algebraic expression for what I want the calculator to do? The calculator would parse it to an RPN sequence for execution anyway.

Given that I can use algebraic expressions just fine in my RPL models, what advantage would an algebraic-only model have?

What's more, with the RPL models I never have to worry about an object getting lost from the top of the stack; it just can't happen. I can easily enough use up all available memory, but that must be true of any calculator.

As for your daughter preferring her Sharp to an RPN model, has she ever learned to use an RPL model? As counter-examples, my grandniece and grandnephew prefer their RPL models to a TI. Granted, Classic RPN does have some advantages over RPL, but for me, the advantages of RPL far outweigh them.

RPN/RPL calculators may indeed eventually go the way of the dinosaurs, but I'd see that as a failure in marketing and product quality, not due do any disadvantages of RPN itself.

Regards,
James

                  
Re: HP & RPN
Message #22 Posted by Marcus von Cube, Germany on 17 Mar 2006, 3:53 a.m.,
in response to message #21 by James M. Prange (Michigan)

Just to add my two (Euro) cents worth.

AOS (TI-59 style) and RPN on a single line numerical display are roughly comparable in nature. They both require you to think about your expression beforehand. AOS is often used in very much the same way as RPN is: work the expression inside out, see intermediate results by pressing [=] or [)], do some postfix operations like trigs, roots, ... You have to keep track of pending operations in AOS as you need to keep track of the stack contents on an RPN single liner.

For many of the calculations I have to to, even a four banger is good enough, though I prefer one of my classic RPN or AOS machines if multiplications and additions are intermixed. If I have to add a column of figures, something with a real (or simulated) roll of paper is even more appropriate.

No lets compare machines with more power and more screen real estate.

If I have to calculate a complicated expression, probably more than once with varying parameters, the bigger screen vastly pays off. You simply don't get lost so easily. The multi line stack display on RPL machines helps very much to avoid confusion about the stack contents. Together with UNDO you can easily avoid and/or correct mistakes. What I'm missing is the history: once you execute a function, part of the former stack contents is lost (except for UNDO). So if the expression is a complicated one or if you want to reuse it, you better start with ['] on an RPL machine. I don't like the equation editor for this task, it's not intuitive for me. It helps in viewing an expression but I keep forgetting which key combinations are neccessary to invoke it on a given object.

On the high end EOS machines (TI-89 family) you have a history which is displayed in textbook form and which can be easily traversed back to modify and reexecute expressions. Editing is done on the command line with a bunch of parantheses. This is equivalent to starting with ['] on an RPL machine.

Differences aren't as clear as is pointed out in this thread more than once. If you compare the right classes of machines you can see (dis)advantages on both sides. In many cases it's just a matter of taste.

Marcus

P.S.: On an AOS programmable you get the equivalent of EOS by writing a program. Just reading the equation is a little arkward if you have to think in numerical keycodes.

RPN or RPL programs with stack syntax are often "write only" to me. Since the parsing of the expression has been done in the head of the programmer, you just see the results of his thinking. It's a little like understanding disassembled machine language.

Marcus

                        
Re: HP & RPN
Message #23 Posted by James M. Prange (Michigan) on 17 Mar 2006, 5:23 p.m.,
in response to message #22 by Marcus von Cube, Germany

Where an advanced algebraic model or an RPL algebraic object really does best is when you already have an algebraic expression written out and it's just a matter of keying it in and having the calculator parse and evaluate it.

More often than not I don't already have an expression available, so I'd have to compose one first, deciding where to put parentheses to get the calculator to work the problem in the correct order, or optionally leaving parentheses out if I knew that precedence rules would take care of the order of operations. Working the problem out RPN style saves me the extra bother.

Quote:
What I'm missing is the history: once you execute a function, part of the former stack contents is lost (except for UNDO).

Or the LASTARG command or the last command lines operation. And of course you can always DUP objects and use the interactive stack operations.

Quote:
So if the expression is a complicated one or if you want to reuse it, you better start with ['] on an RPL machine.

That's certainly an option, but more often I start the command line with << and enter a program in RPN syntax.

Quote:
I don't like the equation editor for this task, it's not intuitive for me. It helps in viewing an expression but I keep forgetting which key combinations are neccessary to invoke it on a given object.

Same here. I'm sure I could learn to use it well, but ordinarily I just type in an expression on a single line, although that often requires more parentheses. Perhaps part of my dislike is due to some maddeningly slow operations in the 48SX equation writer, and though they've speeded things up in more recent models, I've gotten used to doing without it and haven't bothered to relearn how to use it.

Quote:
RPN or RPL programs with stack syntax are often "write only" to me. Since the parsing of the expression has been done in the head of the programmer, you just see the results of his thinking. It's a little like understanding disassembled machine language.

I think that that's true of any programming language. Sometimes even trying to understand a program that I wrote quite a while ago can be a bit of a challenge. But then too, it's not always obvious just how a mathematician got from an original expression to an equivalent expression.

Regards,
James

            
Re: HP & RPN
Message #24 Posted by Mike T. on 17 Mar 2006, 6:02 a.m.,
in response to message #2 by Valentin Albillo

I have to admit that despite some of the sentiments expressed here I prefer RPN. I do find it easier to use than conventional algebraic calculators and find that the stack is particularly convenient as intermediate results can easily be reviewed using round down/round up or exchange X-Y, something that I find convenient in ordinary use, totalling up household bills, working out VAT, checking my tax returns etc.

I am a very ordinary user, and I have never had much use for the high end functions like matrix manipulation, and only limited use for equation solving (which only my HP34 has anyway).

If I really do need to do something that involves a complex formula then I tend to use a spreadsheet.

Mike T.

            
Re: HP & RPN
Message #25 Posted by Samuel Heddle on 17 Mar 2006, 10:23 p.m.,
in response to message #2 by Valentin Albillo

Quote:
Hi, Antonio:

RPN's only place is in a museum, like this one for instance. Using it dooms you to inefficiency and to plain obsolescence. Using it in class can be your number one headache if you're a student, and can certainly lower your grades and put you at a serious disadvantage if you stick to it long enough.


Heh, funny. I always get results in my Calc class first, using a 41CV, when everyone else has TI84s and up. My grades have also seen an upswing since I got my 41, and used it in place of a TI-89ti.

                  
Re: HP & RPN
Message #26 Posted by Karl Schneider on 19 Mar 2006, 3:58 p.m.,
in response to message #25 by Samuel Heddle

Quote:
Heh, funny. I always get results in my Calc class first, using a 41CV, when everyone else has TI84s and up. My grades have also seen an upswing since I got my 41, and used it in place of a TI-89ti.

Since the HP-41 does not do symbolic mathematics of any kind -- algebra or calculus -- this must mean that you are able to obtain answers faster (and learn better) using paper, pancil and brain, rather than meticulously entering the expressions to have the calc do the work.

If you use an HP-41 in a calculus class, the Advantage module would be a fine addition. Its numerical SOLVE and INTEGrate functions can allow you to check your answers.

Here's my Articles Forum contribution on SOLVE and INTEG.

-- KS

      
Re: HP & RPN
Message #27 Posted by Howard Owen on 16 Mar 2006, 5:46 p.m.,
in response to message #1 by Antonio Maschio (Italy)

Hi, Antonio,

It was entirely predictable that your post would stir up the rancorous (but somehow amusing) RPN vs AOS debate. I'm a devotee of the RPN school of the calculator religion, but I don't want to stir that pot any more vigorously than has already been done. I don't think anyone responded to your actual question, however:

Quote:
In other words, is there a link between RPN and HP leadership?

And since you solicited opinions (rather than rigorously researched facts, which I'd be hard pressed to present 8) mine is that there is no direct relationship. The apparent connection is an example of post hoc ergo propter hoc fallacy: The switch to algebraic occurred before the decline in HP's market share, but didn't cause it, again in my opinion. I believe the detour into RPL, the neglect of the high-school market and the rise of the desktop PC for serious mathematical analysis all combined to knock HP off its perch.

So there. 8)

Regards
Howard

Edited: 16 Mar 2006, 5:47 p.m.

      
Re: HP & RPN
Message #28 Posted by Bill Rice on 16 Mar 2006, 8:16 p.m.,
in response to message #1 by Antonio Maschio (Italy)

Here are a few answers:

1. If HP once believed so much in RPN, why not today? RPN was a solution to the problem of how to allow complex expressions using little RAM. RPN pushes the ordering of operations onto the user, and does it in an (almost) intutive way. Today, calculators can have gobs of RAM at little cost, users are used to letting the program do all the work for them. If Microsoft once believed in command-line DOS, why not today?

2. If HP once sold a lot of calculators and was the leader, why not today? Probably a marketing problem. The market changed from largely professional users to educational, and HP for whatever reason didn't succeed in pushing their products into schools. Maybe price? Schools at all levels are always under pressure to find the lowest cost (initial purchase price) solution.

3. If we suppose HP gave up with calculators as a leading product, but still believing in RPN, HP calculators today should be pure RPN. Or should we suppose that HP gave up with RPN too? -I don't think RPN was a religion at HP, it was a solution to a problem. Things changed, the problem of low RAM went away. Note that their current RPN calculators are very expensive compared to non-RPNs (particularly scientific). Is the Hp33S that much more expensive to make than a $15 Casio or Sharp? Doubtful, since it seems to be mostly a minor update to a model introduced over a decade ago.

4. Is RPN something that should be suggested/proposed to people, instead of producing calculators that are merely copies of TI or Casio products? I mean, is HP in the position to produce those golden years RPN calculators again, without being affected by "what will people say?" or "people won't buy this: it's too difficult!" - They still sell RPN's, at a high price point. They are aimed at "professional" users, who know what they want and are willing to pay for it. Why introduce a mass-market product when your first selling point is to say, "Honest, it's not difficult!".

5. If today HP sold only RPN calculators, do you think it would sell less?

Definately. Someone is buying the cheaper non-RPN scientifics, otherise they would have been discontinued.

You say yourself that, after using RPN for years, you can no loner use algebraic mode. Probably 99% of the population would say the exact opposite. They are no less smart than you, it is just what they are used to.








            
Re: HP & RPN
Message #29 Posted by Palmer O. Hanson, Jr. on 16 Mar 2006, 11:12 p.m.,
in response to message #28 by Bill Rice

It seems as if the RPN vs AOS debate has always been more of a religious issue than a technical issue. The problem with religions is that they can become corrupt. A book on that subject When Religion Becomes Evil by Charles Kimball lists warning signs of corruption in religion where two of the signs are "Absolute Truth Claims" and "Blind Obedience." Doesn't that sound like our long standing debate? To get unbiased viewpoints one has to find some of those users that were once called "bilinguals", meaning that they felt equally competent with either system.

I suggest that for most engineers and scientists the fewer keystrokes that come with the use of RPN really aren't important because they don't sit at their machine pressing keys all day long, or even for a small portion of each work day. There really may be some users who press keys all day long -- in the olden days we had keypunch operators who operated the machines that made the holes in the IBM cards we used for computer access.

As for marketing TI made a conscious decision back in 1990 to concentrate on the education market. They abandoned a newsletter Programmable Calculator News which supported the TI-74 and TI-95 and started a newsletter It's About T.I.M.E. - Technology in Math Education. They proceeded to pay as much attention to the education market as HP had paid to the engineer/scientist market. The big difference is not whether one uses RPN or RPL or AOS or EOS but that the education market is so large. TI bet their calculator future on graphing calculators for the education market and time has proved that they made a correct decision. This was from a company which had made some monumental marketing and technical mistakes in the past. Does anyone remember the TI-99/4? Does anyone remember the keyboard for the TI-55II, TI-57LCD, and BA-55?

      
Re: HP & RPN
Message #30 Posted by HrastProgrammer on 17 Mar 2006, 2:28 a.m.,
in response to message #1 by Antonio Maschio (Italy)

In other words, is there a link between RPN and HP leadership?

I don't think there is a direct connection. It has more to do with other features, old HP quality, customer support, etc, etc.

Regarding this (pointless) RPN (RPL, ...) vs. AOS (EOS, ...) discussion ... From the current (economical, educational, ...) point of view I must agree with Valentin: Why bother with RPN when you have tons of AOS (EOS, ...) calculators out there which are much simpler to use for average user (student, ...)? Why do you have to enter 2 3 * 1 + 5 6 * 4 + * when you can enter (1+2*3)*(4+5*6)?

Disclaimer: I haven't said that AOS (EOS, ...) is better, just that it is widely accepted way of entering expressions on the calculator.

For me (but note that this is only my personal opinion), a stack machine where you can enter and evaluate expressions in both systems is just perfect - and this is RPL. I haven't been paying much attention on RPL for a long time because I have been much more oriented to RPN (HP-41X, HP-42X, HP-1XE) and AOS/BASIC (HP-71X) during the last few years. But, thanks to my current interest in Forth programming language (after almost 15 years of not using it), I tend to appreciate RPL much more. From my point of view, the main problem with RPL is a bad/slow program editor with separation of source from the program while editing, which is not appropriate for the calculator (this is also very memory hungry because the system has to decompile the whole program to character string object, edit it and compile this character string object back to the program) and this kept me away from RPL programming on a calculator. But, this will be solved with my upcoming project which (I hope) will support UserRPL/SystemRPL in a uniform manner directly on the calculator without the need for a separate editor, compiler, assembler, etc. (I am not talking about another set of SysRPL tools like these on HP-49G/G+ which are working in the usual way: edit the source and compile it so you always have to keep the source together with the program during the development).

Edited: 17 Mar 2006, 2:33 a.m.

            
Re: HP & RPN
Message #31 Posted by James M. Prange (Michigan) on 17 Mar 2006, 7:53 p.m.,
in response to message #30 by HrastProgrammer

Quote:
Regarding this (pointless) RPN (RPL, ...) vs. AOS (EOS, ...) discussion ... From the current (economical, educational, ...) point of view I must agree with Valentin: Why bother with RPN when you have tons of AOS (EOS, ...) calculators out there which are much simpler to use for average user (student, ...)? Why do you have to enter 2 3 * 1 + 5 6 * 4 + * when you can enter (1+2*3)*(4+5*6)?
Well, actually, I'd more likely enter 1 2 3 * + 4 5 6 * + * in place of (1+2*3)*(4+5*6).

But I do see your point. A student is more often presented with an expression than asked to work out a "story problem", and even with a story problem, he's probably expected to compose an expression to work it out.

Personally, I'd think that an RPL model gives the best features of algebraic and RPN syntax, but a math student's instructor and fellow students probably wouldn't be familiar with RPL and not much help if he's having problem with it. I expect that, for most math students, an algebraic model (preferably the same as the instructor uses) is the more reasonable choice.

Quote:
From my point of view, the main problem with RPL is a bad/slow program editor with separation of source from the program while editing, which is not appropriate for the calculator (this is also very memory hungry because the system has to decompile the whole program to character string object, edit it and compile this character string object back to the program) and this kept me away from RPL programming on a calculator.
Note that in the 49 series, there's a "clipboard" available, with BEGIN, END, COPY, CUT, and PASTE available as right-shifted keys, and additional editing tools, incuding find and replace operations, available by pressing the TOOL key. I don't find it as nice as using my text editor on the PC, but it's not all that bad.

The compiler and decompiler certainly (temporarily) use some system RAM, and sometimes both the compiled object and it's decompiled character string form have to be in RAM. I think that the idea is that the compiled object is smaller than the source code (or decompiled object) character string. Compiling only has to be done for an ENTER (or implicit ENTER) from an editor, when downloading an ASCII file, or for STR\-> or OBJ \->. Decompiling only has to be done for displaying an object, uploading it with an ASCII transfer, printing it, or for \->STR. I expect that, assuming that programs are ordinarily stored in variables, the compile/decompile operations end up saving on memory use.

Compiling also checks the syntax, so you see whether your source code is valid right away.

I think that more of a problem is that compiling discards the programmer's formatting (indents, delimiters, and separators) and comments, and doesn't allow one to save source code with syntax errors for later editing.

A work-around is to write the program within a character string, perhaps the most foolproof way being to start with

C$ $ 
as the first line in the editor (before the program itself). This way the source code, including formatting, any comments, and regardless of syntax errors, is compiled as a character string, which can be left on the stack or stored in a variable. When you want to actually compile the character string object to a program object, have it (or a copy of it) on level 1 and do a STR\-> or OBJ\->.

You could even use vectored ENTER (both system flags -62 and -63 set) with a \GaENTER program of

\<< DUP STR\-> \>>
to have ENTER place the command line on stack as a string and (if valid) execute it. If the command line isn't valid, you end up with two copies of the string on the stack.

Still, if I happen to be at my PC, I prefer to use it to write any but fairly trivial programs for the calculator.

Regards,
James

Edited: 17 Mar 2006, 8:00 p.m.

                  
Re: HP & RPN
Message #32 Posted by James M. Prange (Michigan) on 17 Mar 2006, 8:44 p.m.,
in response to message #31 by James M. Prange (Michigan)

PS:

We could turn a question around and say why should I have to key in

(1+2*3)*(4+5*6)
instead of just doing
2 3 * 1 + 5 6 * 4 + *
or
1 2 3 * + 4 5 6 * + *
For use outside of math class, of course.

Regards,
James

                        
Re: HP & RPN
Message #33 Posted by Thomas Okken on 18 Mar 2006, 12:27 p.m.,
in response to message #32 by James M. Prange (Michigan)

I guess that's one issue that fuels the AOS-vs-RPN debate -- it would be better to have an "in which context is which better" debate...

When I'm programming in C or Java, I like being able to write things like

    double h = sqrt(x * x + y * y);

...and that's simply because of how readable it is.
The HP-42S RPN equivalent

    RCL "X" X^2 RCL "Y" X^2 + SQRT STO "H"

is easier to enter, but not so easy to parse for the human eye.

Algebraic notation tends to highlight the structure of an equation; RPN is a series of instructions to evaluate it -- both have their uses.

- Thomas

                              
Re: HP & RPN
Message #34 Posted by Ed Look on 18 Mar 2006, 12:50 p.m.,
in response to message #33 by Thomas Okken

Excellent point, especially for those who are versed in either or both mathematics and programming.

I just want to add one thing, which essentially has been said by other posters on this thread, that, as Mr. Okken said, as the RPN sequence of instructions is not easily decipherable by the human eye, and we are all essentially visually driven, unless trained later in life to be otherwise. Students, at their age are not going to be able to like using RPN... unless shown and then they have to practice it themselves a bit. I first saw a RPN (HP 25) unit in a professor's hands and while he didn't exactly extol its algorithmic virtues, he did say that while a tad tougher to learn at the outset, it becomes easier for the mind to use in the long run.

I took his word and gave it a shot. When my freshman year TI SR-40 (truly an inferior machine) gave out (somewhat shortly after purchase), on the memory of that man and advice of some advanced students, I got the HP 34C. If I could get another one, it'd STILL be my machine of choice, primarily because of its RPN, secondarily because of its rather nice set of features. (But oh, that power consumption, though!)

                  
Re: HP & RPN
Message #35 Posted by James M. Prange (Michigan) on 17 Mar 2006, 9:55 p.m.,
in response to message #31 by James M. Prange (Michigan)

PS:

Of course, another reason for compiling a command line as soon as ENTER is pressed is execution speed. With objects stored in the compiled form, the system doesn't have to go through the process every time a stored program is evaluated, and presumably most programs will be evaluated more often than they're edited.

Regards,
James

                  
Re: HP & RPN
Message #36 Posted by HrastProgrammer on 18 Mar 2006, 2:24 a.m.,
in response to message #31 by James M. Prange (Michigan)

Believe it or not, I know all that ... and that's the reason why I am searching for an alternative and better way (at least for me) of editing a program.

Again:

(*) When you are editing a RPL program, the decompiled source is kept in RAM together with the original program.

(*) During the compile, the source is kept in RAM together with the original program and the program which is currently being built (if I am not missing something here).

For example, you have a program stored in a variable:

(1) Before editing:

Variable: << 0 1 10 FOR I + NEXT >>

(2) After decompile:

Variable: << 0 1 10 FOR I + NEXT >>
Temporary: "0 1 10 FOR I + NEXT"

Now you can eventually PURGE the variable to free the space occupied by the program but this is not my way of working because I want to keep the original.

(3) After editing:

Variable: << 0 1 10 FOR I + NEXT >>
Temporary: "0 1 10 FOR I I + NEXT"

(4) While compiling:

Variable: << 0 1 10 FOR I + NEXT >>
Temporary: "0 1 10 FOR I I + NEXT"
Temporary: << 0 1 10 FOR I ...

(5) After compiling:

Variable: << 0 1 10 FOR I + NEXT >>
Temporary: << 0 1 10 FOR I I + NEXT >>

(6) After storing to a variable:

Variable: << 0 1 10 FOR I I + NEXT >>

You see a problem? At one moment you have to keep 3 objects for the same program in memory.

I would like to avoid this so I am investigating a possibility to directly edit a program without a need for decompiling/compiling the whole program. I like HP-41C/42S or HP-71B type program editing where you are editing the current program line only and I would like to do something similar with RPL. I won't post any details for now ...

BTW, in my opinion, STR\-> is useless for interactive work and compiling a program after editing because, if the program contains a syntax error, it will report 'Syntax Error' but won't show where the error actually is in the source ...

Best regards.

Edited: 18 Mar 2006, 6:44 a.m.

      
Re: HP & RPN
Message #37 Posted by Andy Morales on 17 Mar 2006, 10:37 a.m.,
in response to message #1 by Antonio Maschio (Italy)

Hello fellow HP users and ex-users. This ole Babyboomer (60 this year) started out with a HP35 in mid-70's while studying Mechanical engineering. Have used the TI/SR 50 and got same results doing the infamous MACH equation in HP manual. Of course RPN felt more natural when performing calculations. AOS gave same answers without use of parenthesis or brackets. I enjoyed using both logic systems until i picked up one of the state of the art latest ALEGRAIC ENTRY calculators ala TI 83, HP 39 series. A look of horror and shock overcame me when i tried to SQARE a negative number in ALGEBRAIC MODE and the answer was a negative. ie -3 squared is a positive 9 not a negative 9 as the following calculators will give (HP 30S, 38G, 39G, TI 83, etc) Then i realized that the user must enclose the negative number in PARENTHESIS to get the correct answer. No biggie. This ole timer will stick to his HP15C and HPGII in RPN mode to solve his equations. Not because i hate algebraic logic, but because i feel more confident in RPN. I think anyone can learn to use any logic if they follow the correct number entry as stated in the Calculator manual. IMHO the latest Graphic scientific calculators be they RPN or Algebraic logic are ASS KICKERS and pack a punch for doing Science or Math.

Warmest regards to all

Andy Babyboomer who is learning to use and love his new HPGII Graphing calculator in RPN mode

      
Re: HP & RPN
Message #38 Posted by Crawl on 17 Mar 2006, 1:35 p.m.,
in response to message #1 by Antonio Maschio (Italy)

Random thoughts:

For the "how do you add 1, multiply by 4, then divide 5 by result" question, when I used a Casio algebraic as my main calculator, I found that I had to use the ANS[wer] button constantly for such manipulations. Well, even on an algebraic, most let you easily chain together symmetric operations, like the adding 1 and the multiplying by 4. You'd really only have to go to ANS to divide 5 by the result (5 / ANS) ... and even that could be skipped by using the reciprocal feature, then multiplying. However, even if you can skip using ANS so much, you'd still have to hit "equals" a lot.

I suppose now some algebraics have big enough entry lines that you don't have to worry about dividing the problem up and then using chain calculations: You might be able to enter it all at once.

But that probably explains the continued success of the 12C: When you're balancing books, you don't have a formula. You just keep doing an endless string of chain calculations.

One thing RPN has a definite advantage in is solving on the fly simple equations made of functions that have inverses on the calculator, eg,

-15 = 0.00001* (exp(.5/x) -1) - 20

Then it's easy, without having to think about it much, to simply do each operation backwards..

-15 [Enter]
20 +
.00001 /
1 +
ln
1/x
.5 *

Granted, it's not like that would be all that difficult on an algebraic. It's just easier with RPN. And it would cease to be an advantage for equations where the variable is operated on by several functions, like even

cos(x) + exp(x) - x^2 = 0

Pairing paranthesis can still be a problem with modern algebraics, like the TI-89. If I'm entering something complex, I'll break it up, and then combine the final result by copying and pasting from the history. It works, but using RPN, or an equation writer, could arguably be more elegant.

As for the 33s offering both RPN and algebraic, there is at least one set of circumstances where it's better to use algebraic mode: With complex numbers! I think the 33s's RPN utilization of complex numbers is TERRIBLE! You can only deal with 2 complex numbers at a time, which means you'll either have to do a lot of planning to evaluate anything remotely complicated, or store a lot of intermediate results in registers, or both. And it seems to me that the odds of making a mistake while doing that are high.

On the other hand, in algebraic mode, the 33s's complex handling is decent, and it's fairly easy to work with expressions of almost arbitrary complexity.

Anyway, when it comes to complicated formulas that I might have to use multiple times with different variables, plugging in repeatedly with either RPN or an algebraic would be unbearable. In that case, it'd be better to use a calculator that lets you enter formulas, and then substitute the variables in. By now, many calculators (with RPN or algebraic modes) have this feature.
            
Chain calc's w/AOS & solving
Message #39 Posted by Karl Schneider on 18 Mar 2006, 1:07 a.m.,
in response to message #38 by Crawl

"Crawl" --

Good observations!

Quote:
For the "how do you add 1, multiply by 4, then divide 5 by result" question, when I used a Casio algebraic as my main calculator, I found that I had to use the ANS[wer] button constantly for such manipulations. Well, even on an algebraic, most let you easily chain together symmetric operations, like the adding 1 and the multiplying by 4. You'd really only have to go to ANS to divide 5 by the result (5 / ANS) ... and even that could be skipped by using the reciprocal feature, then multiplying. However, even if you can skip using ANS so much, you'd still have to hit "equals" a lot.

That's just what I found on a $15 Casio fx-115MS (with "S-V.P.A.M.") It has an expression buffer of 80 characters, but closing ")" at the end of an expression can be omitted.

Quote:
One thing RPN has a definite advantage in is solving on the fly simple equations made of functions that have inverses on the calculator, eg,

-15 = 0.00001* (exp(.5/x) -1) - 20


This "inverted L"-shaped expression is somewhat trickier to solve numerically than it would seem! The HP-33S and the HP-17B/17BII/27S can easily find the solution of 0.03810288661 with their algebraic-manipulation direct-solution method. However, the HP-32SII and the Casio had difficulties finding the root unless intelligent guesses were provided (0.04 and 0.05 will do, but 0.05 and 0.06 will not).

Quote:
Pairing parenthesis can still be a problem with modern algebraics, like the TI-89. If I'm entering something complex, I'll break it up, and then combine the final result by copying and pasting from the history. It works, but using RPN, or an equation writer, could arguably be more elegant.

A topic I mentioned in my earlier post in this thread titled, "RPN & Command-line AOS"...

Quote:
I think the 33s's RPN utilization of complex numbers is TERRIBLE! You can only deal with 2 complex numbers at a time, which means you'll either have to do a lot of planning to evaluate anything remotely complicated, or store a lot of intermediate results in registers, or both. And it seems to me that the odds of making a mistake while doing that are high.

Agreed. The complex-number functionality, carried forward from the HP-32SII, seems to have been modeled after the routines in the original HP-41 Math Pac, which were implemented as keystroke programs.

However difficult they are for interactive work, the complex-number routines are quite useful for programming. I used them extensively in the "AC Power Transfer" program in the MoHPC Software Library.

Quote:
Anyway, when it comes to complicated formulas that I might have to use multiple times with different variables, plugging in repeatedly with either RPN or an algebraic would be unbearable. In that case, it'd be better to use a calculator that lets you enter formulas, and then substitute the variables in. By now, many calculators (with RPN or algebraic modes) have this feature.

And, of course, the HP-17B/17BII/27S have had that capability since 1988. My only complaints would be the fixation on direct solution to the exclusion of other requested solution values, and the non-support of implicit multiplication.

Best regards,

-- KS

Edited: 19 Mar 2006, 1:30 a.m.

      
Re: HP & RPN
Message #40 Posted by Frank Wales on 19 Mar 2006, 6:47 p.m.,
in response to message #1 by Antonio Maschio (Italy)

Having just looked through the replies here, it occurs to me that two messages that I posted elsewhere about 15 years apart represent what I think about these issues:

Message on Psychology of Programming Interest Group discussion list, June 2005

Message in comp.misc, February 1990

            
Re: HP & RPN
Message #41 Posted by Palmer O. Hanson,, Jr. on 19 Mar 2006, 10:22 p.m.,
in response to message #40 by Frank Wales

In a discussion extolling the virtues of the HP-28S you wrote:

"... And look in the manual at the section on changing the batteries (it does have one, doesn't it?) to see if they tell you how long you can take to change them *without* losing the memory of the machine; you shouldn't need the dexterity of a plastic surgeon and the limbs of an octopus to do it in time...."

I purchased my 28S at a garage sale for two dollars back in 2001. I expressed surprise at the low price and in return received a lecture on "the worst battery cover design in the world." The owner said that he had so much trouble replacing the batteries and the cover that he lost the memory. He was so exasperated that he just wanted to get the damn thing out of his home. I managed to repair the battery compartment cover and get some batteries installed and have enjoyed playing with the 28S. But, the previous owner is correct about the design of the battery compartment cover. When we talk about the religion involved in calculator design, manufacture and ownership surely we have to recognize that the 28S battery compartment cover design was a sin.

But, in my mind HP's biggest sin was delivering calculators which would be damaged if the user connected the charger without the battery pack in place and making good contact. It has been said that all they needed to do was add a resistor and a diode which shouldn't have been prohibitive in units which were higher priced anyway. I suggest that there is another explanation. In those days it was common knowledge in the electronics industry tha power supply design wasn't held in very high esteem, and as a result the budget for power supply design wasn't very generous.

Other manufacturer's have sinned as well. NSC and National Semiconductor managed to make devices that failed so consistently that it is hard to find a working one. TI did the "multiplication is not commutative trick" on the TI-57, the TI-58/59 and (I think) the SR-52. TI also designed the CC-40 with a 3/4 size QWERTY keyboard and advertised that a user could touch type -- but, they put the ENTER key where the right shift key should be even though they had a blank space to the right of the semicolon key!

And then there is Sharp -- of several hundred calculators in my collection the Sharp's stand out. Whether at garage sales, antique stores, thrift shops or wherever one finds collectibles the Sharp's are the only ones where I fully expect that the device will work.


[ Return to Index | Top of Index ]

Go back to the main exhibit hall