|Re: RPN stack levels|
Message #32 Posted by Karl Schneider on 20 July 2005, 2:14 a.m.,
in response to message #31 by John L. Shelton
John Shelton posted:
It's almost certain that the decision to have small, limited stacks was a compromise due to engineering cost, rather than a decision that 3, 4, or 5 are the "best" sizes of stack. A desktop calculator with a display of arbitrary size would have been much more expensive.
True, the 4-element stack of the HP-35 was probably a compromise of what was minimally sufficient and what could be done with limited resources in 1972. 4 is still enough for most every practical application, which is one reason why the stack on RPN HP's RPN never got larger (though the 42S should have had a larger stack due to complex-number operations). The 42S, BTW, is the first RPN HP handheld calc with a two-line display, after 14 years of production.
Once one makes a decision to have a small, fixed size stack, then one can decide whether the top stack variable replicates on stack drop. Was the original goal to have stack drop replication, and let that drive the decision to have a small, fixed-size stack? Probably not. It was probably a consequence, not a driver.
Well, with a fixed stack, the choices were to zero out the "popped" elements or to replicate the top element. Replication gives the user an endless supply of repeatedly-used values -- useful for constant arithmetic.
But as we have found in many, many areas of computer programming, a fixed limit size to nearly anything winds up being a big headache later. (remember DOS 640kbytes? ...
Your analogy is imperfect, I would say. The 640-kB memory "partition" was a serious encumbrance because there really is no limit to what one might wish a PC to do. However, I think there is a limit to what the vast majority of users would reasonably expect a true handheld calculator to do. Beyond that limit, a PC or even a PDA would be a better-sized tool for the task. One could argue that the HP-48/49 and TI-89 are overkill, but there was no practical alternative at the time they were designed.
If the task remains the same, the tool needn't get more elaborate. Has the shovel been fundamentally "modernized"? How many of us actually use an electric toothbrush?
In summary: For nostalgia: fixed size. For modern design: unlimited stacks
"Nostalgia"? If modernity means replacing
x<>y, Rdn, Rup
DUP, SWAP, DROP, OVER, ROT, UNROT, ROLL, ROLLD, PICK, UNPICK, PICK3, DEPTH, DUP2, DUPN, DROP2, DROPN, DUPDUP, NIP, NDUPN
and the infamous (beep!) "DROP Error: Too few arguments",
then take me down "memory lane" every time!
-- Best regards from KS