Programming
The HP-48 series of calculators support a stack-based programming language named Reverse Polish Lisp (RPL), a combination of Reverse Polish Notation (RPN) and Lisp. RPL adds the concepts of lists and functions to stack-based programming, allowing the programmer to pass unevaluated code as arguments to functions, or return unevaluated code from a function by leaving it on the stack. In spite of the name, RPL resembles Forth more closely than Lisp.
RPL comes in two flavors: User RPL and System RPL. User RPL is the language that a user can program directly on the calculator. System RPL requires an external compiler; this may be done on the calculator with a third-party utility, or on another machine. The two languages vary mainly in the number of low-level operations available to them. User RPL does not expose any commands that do not check their arguments. Consequently, User RPL programs cannot normally crash the calculator (and are therefore slower than System RPL programs), whereas a System RPL program that invokes a command with incorrect arguments will almost certainly leave the calculator in a state which requires a full memory reset (occasionally referred to as a three-finger salute because it requires pressing the ON, the A, and the F keys on the calculator at the same time).
It is also possible to program the HP48 directly in Machine Language code. Books are available on this subject and some of them are freely available on the web (see external links).
Programmers working in System RPL or machine language most commonly work on an HP48 emulator because it is much quicker and easier to restore the state of a crashed emulator than to restore a crashed calculator.
Read more about this topic: HP-48 Series
Famous quotes containing the word programming:
“If there is a price to pay for the privilege of spending the early years of child rearing in the drivers seat, it is our reluctance, our inability, to tolerate being demoted to the backseat. Spurred by our success in programming our children during the preschool years, we may find it difficult to forgo in later states the level of control that once afforded us so much satisfaction.”
—Melinda M. Marshall (20th century)