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
FOCAL (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!
===FOCAL=== The PDP-6 was DEC's first [[mainframe]], and JOSS took full advantage of its power and memory capacity. The DEC programmers were familiar with the system and interested in JOSS, but most of the computers DEC sold had nowhere near the power needed to run it. Written by [[Richard Merrill (computer scientist)|Richard Merrill]], FOCAL removed features from JOSS as required in order to be able to run in the much more limited memory space of the [[PDP-8]] and other [[12-bit computing|12-bit]] machines in the DEC lineup. To achieve this, a major change was made to reduce the amount of temporary data, or ''[[State (computer science)|state]]'', needed to parse the statements. One noticeable effect of this decision was that [[Conditional (computer programming)|conditionals]] could only be used for [[Branch (computer science)|branches]], in contrast to JOSS, where conditionals can be applied to any statement. The other noticeable change was to rearrange the keywords so each started with a unique letter. This simplified the [[Parsing|parser]], which needed to read only the first letter of the command on a line of code, and could then skip forward to the next [[whitespace character]]. It would then compare that against an internal list of possible keywords, which was one character per entry. In contrast, JOSS had to continue reading until it had read the entire command word and then compared that against a list containing complete words. Not only did this change save memory in the parser, users could also save memory by typing in only that letter, reducing the size of the [[source code]]. [[File:DEC Programme auf Lochstreifen.jpg|thumb|PDP-8 [[punched tape]]s, including a FOCAL-69 tape dated 7/9/69]] The first version of FOCAL was released in 1968 for the [[PDP-8]]. An updated version followed the next year, which was later known as FOCAL-69. The system as a whole, regardless of version, was known as FOCAL-8 when it was ported to other machines in the 12-bit series, including the [[PDP-5]] and [[PDP-12]]. It was popular as it was highly efficient in memory use, which was often severely limited on these machines to a few [[kilobyte]]s (KB). The similar FOCAL-11 ran on the [[PDP-11]] under [[RT-11]]. [[Processor Technology]] also offered a version of 8k FOCAL, complete with Lunar Lander, for the [[Intel 8080]]-based [[Altair 8800]] system. This was provided for the copying charge of the tape, while the [[source code]] was provided for free with other purchases.<ref>{{cite magazine |url=https://archive.org/details/byte-magazine-1976-04 |title=Watch Your Altair Grow! |magazine=Byte |date=April 1976 |page=[https://archive.org/details/byte-magazine-1976-04/page/n49 48]}}</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)