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
BASIC-PLUS
(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!
==Virtual machine== BASIC-PLUS was not an interpreter but a [[compile and go system]]: each line of BASIC was translated into "PPCODE" (Push-Pop Code) as it was entered, for subsequent fast execution on its virtual machine. These translations did not tokenize the BASIC lines but rewrote them for use on a stack machine; you could not translate these representations back to BASIC statements. This avoided the need to repeatedly decode the keywords as strings: once converted to PPCODE the keywords were numbers that pointed to routines to run that function. BASIC-PLUS included a {{code|COMPILE}} command, but this was not a true compiler; this simply saved the program's PPCODE representation so that it did not have to be recompiled when the BASIC program was next loaded into memory. The system stored a user's program in two formats. One was the editable source code in text format, created using the {{code|SAVE}} command and normally placed in a .BAS file. The other was the PPCODE version of the program created by the {{code|COMPILE}} command and saved to a .BAC file; .BAC files were smaller and loaded and ran faster, but could not be edited.<ref>{{cite web | url=https://retrocomputing.stackexchange.com/questions/6468/basic-plus-inline-operators-do-they-actually-make-sense | title=BASIC-PLUS inline operators, do they actually make sense? |access-date=2020-08-05}}</ref>
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)