Jump to content
Main menu
Main menu
move to sidebar
hide
Navigation
Main page
Recent changes
Random page
Help about MediaWiki
Special pages
Niidae Wiki
Search
Search
Appearance
Create account
Log in
Personal tools
Create account
Log in
Pages for logged out editors
learn more
Contributions
Talk
Editing
IBM 650
(section)
Page
Discussion
English
Read
Edit
View history
Tools
Tools
move to sidebar
hide
Actions
Read
Edit
View history
General
What links here
Related changes
Page information
Appearance
move to sidebar
hide
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!
==Software== [[File:IBM 650 student program 1961.agr.jpg|thumb|Student program from 1961 written in IBM 650 machine language, based on an exercise in Andree's book<ref name=andree />]] The 650 instruction set is simple enough that small programs could be written in machine language and this was common for student exercises.<ref name=andree>{{cite book | last = Andree | first = Richard V. | title = Programming the IBM 650 Magnetic Drum Computer and Data-Processing Machine | url = http://www.bitsavers.org/pdf/ibm/650/Andree_Programming_the_IBM_650_Magnetic_Drum_Computer_and_Data-Processing_Machine_1958.pdf | year = 1958}}</ref> There was a single-instruction-per-card format that could be loaded directly into the machine and executed. Machine language was awkward for large programs and, over time, a variety of programming languages and tools were written for the IBM 650. These included: ; Assemblers *[[Symbolic Optimal Assembly Program]] (SOAP) — An [[assembler (computing)|assembler]]<ref name=soap>{{cite book | last = IBM | title = SOAP II for the IBM 650 | year = 1957 | url = http://www.bitsavers.org/pdf/ibm/650/24-4000-0_SOAPII.pdf | id = C24-4000-0 }}</ref> *Technical Assembly System (TASS) — A [[macro assembler]]. ; Interpretive systems * An Interpretive [[application virtual machine]] package originally published as "Complete Floating Decimal Interpretive System for the IBM 650 Magnetic Drum Calculator". This was known by several names: ** the Wolontis–Bell Labs Interpreter, the Bell System, the Bell interpreter, the Bell interpretive system,<ref name="Knuth1986">{{cite journal | first = Donald E. | last = Knuth | title = The IBM 650: An Appreciation from the Field | journal = IEEE Annals of the History of Computing | volume = 8 | issue = 1 | date = January–March 1986 | pages = 50–55 | doi = 10.1109/MAHC.1986.10010 | s2cid = 34595049 }} </ref> or BLIS — the Bell Lab Interpretive System<ref>{{cite book|url=http://www.bitsavers.org/pdf/ibm/650/28-4024_FltDecIntrpSys.pdf|title=IBM Reference Manual: Floating-Decimal Interpretive System for the IBM 650|publisher=IBM|year=1959|pages=63, xxi|id=28-4024|quote=This is a reprint of IBM 650 Technical Newsletter No. 11, March 1956, form 31-6822}} . This reference manual contains the following report, noting that ''In its external characteristics, the interpretive system described in this report owes much to the IBM Speedcoding System for the 701.'' {{cite book|title=Complete Floating Decimal Interpretive System for the IBM 650 Magnetic Drum Calculator|last=Wolontis|first=V.M.|publisher=Bell Laboratories, Inc, Murray Hill, New Jersey}} <!--- I had written BLIS or BLISS even though I know BLIS to be correct. Looking though the history of changes to this IBM 650 article I found -------------------- 1) HOPL shows the name as BLISS, which is incorrect; the correct form is given in "Flow-Based Programming" - ISBN 0442017715" 2) Jpaulm (talk | contribs) . . (11,254 bytes) (-1) . . (→Software: BLIS is right - HOPL is wrong. I used it and it was definitely BLIS - see also discussion item 1 (it was apparently set correctly in 2006)) --------------------- so I've deleted the BLISS alternate I'd entered (see also the 2nd entry in the TALK page) Just found this - the DEC BLISS language, probably the source of BLIS/BLISS confusion. http://www.fh-jena.de/~kleine/history/languages/BlissLanguageGuide.pdf ---></ref> ** [[L1 and L2 (programming language)|L1 and (later) L2]]<ref>{{cite web |url=http://cm.bell-labs.com/cm/cs/cstr/99.html |archive-url=https://archive.today/20140902215751/http://cm.bell-labs.com/cm/cs/cstr/99.html |url-status=dead |archive-date=September 2, 2014 |title=Computing Science Technical Report No. 99 – A History of Computing Research at Bell Laboratories (1937–1975) |first1=Bernard D. |last1=Holbrook |first2=W. Stanley |last2=Brown |publisher=[[Bell Labs]] |access-date=August 27, 2020}}</ref><ref>{{cite web |url=http://bitsavers.org/pdf/ibm/650/34-6822-0_FltDecIntrpsys.pdf |title=A Complete Floating-Decimal Interpretive System For The IBM 650 Magnetic Drum Calculator |first=V. M. |last=Wolontis |publisher=IBM |location=US |via=bitsavers}}</ref> – known outside Bell Labs as "Bell 1" and "Bell 2", among other names (see above) *Synthetic Programming System for Commercial Applications <ref>{{cite book |title= 650 Programming Bulletin 2 |publisher= IBM |year= 1956 |id= 22-6294-0 |pages= 40 |quote= The Interpretive routine described here is a fixed decimal three address system that provides for mathematical, logical, and input-output operations. The logic for this system was obtained from the ''Complete Floating Decimal Interpretive System for the 650'' that was developed by the Bell Laboratories, Murray Hill, New Jersey.}}</ref> ; Algebraic languages / compilers * Internal Translator (IT) — A compiler<ref>{{cite book | first1 = A.J. | last1 = Perlis | author-link1 = Alan Perlis | first2 = J.W. | last2 = Smith | first3 = H.R. | last3 = VanZoeren | title = Internal Translator; IT, A Compiler for the 650 | date = 1958-04-18 | url = http://www.bitsavers.org/pdf/ibm/650/CarnegieInternalTranslator.pdf | id = 650 Library Program 2.1.001 }}</ref> * Revised Unified New Compiler IT Basic Language Extended (RUNCIBLE) — An extension of IT at [[Case Institute of Technology|Case]]<ref>[[Donald Knuth]] published the [[flowchart]] of the compiler in 1959;{{Cite journal | last1 = Knuth | first1 = D. E. |author-link=Donald Knuth| doi = 10.1145/368481.368507 | title = RUNCIBLE—algebraic translation on a limited computer | journal = [[Communications of the ACM]]| volume = 2 | pages = 18–21| year = 1959 | issue = 11 | s2cid = 8224014 | doi-access = free }}; this was his first academic paper.</ref> *[[FOR TRANSIT]] — A version of [[Fortran]] which compiled to IT which in turn was compiled to SOAP<ref>{{cite book | last = IBM | title = FOR TRANSIT Automatic Coding System for the IBM 650 | year = 1959 | url = http://www.bitsavers.org/pdf/ibm/650/28-4028_FOR_TRANSIT.pdf | id = 28-4028 }}</ref> *[[FORTRAN]]<ref>{{cite book | last = IBM | title = FORTRAN Automatic Coding System for the IBM 650 | year = 1960 | url = http://www.bitsavers.org/pdf/ibm/650/29-4047_FORTRAN.pdf | id = 29-4047 }}</ref> *GATE — A simple compiler with one character variable names *[[Information Processing Language|IPL]] — The first list processing language. The best-known version was IPL-V. *SPACE (Simplified Programming Anyone Can Enjoy) — A business-oriented two-step compiler through SOAP
Summary:
Please note that all contributions to Niidae Wiki may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see
Encyclopedia:Copyrights
for details).
Do not submit copyrighted work without permission!
Cancel
Editing help
(opens in new window)
Search
Search
Editing
IBM 650
(section)
Add topic