Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
RPL (programming language)
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
{{Short description|Handheld calculator operating system}} {{About||the programming language for the Commodore PET/CBM computers|Reverse Polish Language|the compiled database programming language|Real-time Programming Language}} {{Use dmy dates|date=April 2019|cs1-dates=y}} {{Use list-defined references|date=October 2023}} {{Infobox programming language | name = RPL | logo = | paradigm = [[Concatenative programming|Concatenative]] ([[stack-oriented programming language|stack-based]]),<ref name="Joy_2020"/> [[structured programming|structured]] | year = 1984<!-- development start --> (1986<!-- first products using it -->) | designer = [[Hewlett-Packard]] | developer = | latest_release_version = <!-- X.Y.Z/{{release date|df=yes|YYYY|MM|DD}} --> | latest_release_date = 2012-04-26<!-- HP 50g 2.16 --><ref name="HP_4"/><ref name="HP_7"/><ref name="HP_5"/><ref name="HP_6"/> | discontinued = 2015<!-- HP 50g --> | typing = | implementations = | dialects = System RPL, User RPL | influenced_by = [[Reverse Polish Notation|RPN]], [[Forth (programming language)|Forth]], [[Lisp (programming language)|Lisp]]<ref name="HPJ38"/> | influenced = | operating_system = [[Hewlett-Packard|HP]] [[calculator]]s | license = | website = | file_ext = }} [[File:HP48G.jpg | thumb | 220x124px | right | HP 48G calculator, uses RPL ]] '''RPL'''{{ref|rpl_acronym_note_1}} is a [[calculator|handheld calculator]] operating system and application [[programming language]] used on [[Hewlett-Packard]]'s scientific graphing [[Reverse Polish Notation|RPN]] (Reverse Polish Notation) calculators of the [[HP-28 series|HP 28]], [[HP 48 series|48]], [[HP 49 series|49]] and [[HP 50g|50]] series, but it is also usable on non-RPN calculators, such as the [[HP 38G|38]], [[HP 39/40 series|39 and 40]] series. Internally, it was also utilized by the [[HP-17B|17B]], [[HP-18C|18C]], [[HP-19B|19B]] and [[HP-27S|27S]].<ref name="RPLMAN"/> RPL is a [[structured programming]] language based on RPN, but equally capable of processing [[infix notation|algebraic]] expressions and formulae, implemented as a [[threaded code|threaded interpreter]].<ref name="RPL3"/> RPL has many similarities to [[Forth (programming language)|Forth]], both languages being [[stack-oriented programming language|stack]]-based, as well as the list-based [[LISP]]. Contrary to previous HP RPN calculators, which had a fixed [[4-level RPN|four-level stack]], the [[dynamic RPN stack|dynamic stack]] used by RPL is only limited by available [[random-access memory|RAM]], with the calculator displaying an error message when running out of memory rather than silently dropping arguments off the stack as in fixed-sized RPN stacks.<ref name="Wessman_2016"/> RPL originated from HP's [[Corvallis, Oregon]] development facility in 1984 as a replacement for the previous practice of implementing the [[operating systems]] of calculators in [[assembly language]].<ref name="RPLMAN"/> The first calculator utilizing it internally was the HP-18C and the first calculator making it available to users was the HP-28C, both from 1986.<ref name="Wickes_1987"/><ref name="RPLMAN"/> The last pocket calculator supporting RPL, the HP 50g, was discontinued in 2015.<ref name="Kuperus_2015_1"/><ref name="Kuperus_2015_2"/><ref name="Wessman_2015"/> However,<!-- an [[Mobile app|app]] is available for [[Android (operating system)|Android]], go49gp[https://play.google.com/store/apps/details?id=o2s.emul.hp49gp&hl=en_US], which emulates the HP 49g+/50g and will run RPL programs. --> multiple emulators that can emulate HP's RPL calculators exist that run on a range of operating systems, and devices, including iOS and Android smartphones. {{anchor|newRPL|DB48X}}There are also a number of community projects to recreate and extend RPL on newer calculators, like [[newRPL]]<ref name="Lapilli_2014_1"/><ref name="Lapilli_2021"/> or [[DB48X]],<ref name="deDinechin_2022"/><ref name="deDinechin_2023"/> which may add features or improve performance.<ref name="Lapilli_2014_2"/>
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)