Speedcoding
Speedcoding, Speedcode or SpeedCo was the first high-level programming language[lower-alpha 1] created for an IBM computer.[1] The language was developed by John W. Backus in 1953 for the IBM 701 to support computation with floating point numbers.[2]
Paradigm | structured, generic |
---|---|
Designed by | John Backus |
Developer | John Backus and IBM |
First appeared | 1953 |
Typing discipline | strong, static, manifest |
Influenced by | |
Assembly language, machine code | |
Influenced | |
Fortran, ALGOL 58, BASIC, C, PL/I, PACT I, MUMPS, Ratfor |
The idea arose from the difficulty of programming the IBM SSEC machine when Backus was hired to calculate astronomical positions in early 1950.[3] The speedcoding system was an interpreter and focused on ease of use at the expense of system resources. It provided pseudo-instructions for common mathematical functions: logarithms, exponentiation, and trigonometric operations. The resident software analyzed pseudo-instructions one by one and called the appropriate subroutine. Speedcoding was also the first implementation of decimal input/output operations. Although it substantially reduced the effort of writing many jobs, the running time of a program that was written with the help of Speedcoding was usually ten to twenty times that of machine code.[4] The interpreter took 310 memory words, about 30% of the memory available on a 701.[1]
Notes
- Meaning symbolic and aimed at natural language expressiveness as opposed to machine or hardware instruction oriented coding.
References
- Allen, Frances "Fran" Elizabeth (September 1981). "The History of Language Processor Technology in IBM". IBM Journal of Research and Development. 25 (5): 535–548. doi:10.1147/rd.255.0535.
- Shasha, Dennis Elliot; Lazere, Cathy (1998). Out of their Minds: The Lives and Discoveries of 15 Great Computer Scientists. New York, USA: Copernicus, Springer-Verlag New York, Inc. ISBN 0-387-98269-8. LCCN 98-16911. SPIN 10693423.
- Backus, John W. (2006-09-05). Booch, Grady (ed.). "Oral History of John Backus" (PDF). Reference number: X3715.2007 (Interview). Ashland, Oregon, USA: Computer History Museum. Archived (PDF) from the original on 2022-04-08. Retrieved 2011-04-23. (42 pages)
- Pugh, Emerson W.; Johnson, Lyle R.; Palmer, John H. (1991). IBM's 360 and early 370 systems. MIT Press. p. 38. ISBN 0-262-16123-0.
Further reading
- IBM speedcoding system for the type 701 electronic data processing machines (PDF). New York, USA: International Business Machines Corporation. 1954 [1953-09-10]. Form 24-6059-0 (5-54:2M-W). Archived (PDF) from the original on 2022-07-04. Retrieved 2022-07-04. (48 pages)
- Backus, John W. (January 1954). "The IBM 701 Speedcoding System" (PDF). Journal of the ACM. 1 (1): 4–6. Archived (PDF) from the original on 2022-05-16. Retrieved 2022-07-04.
- Backus, John W.; Harlan, Herrick (13–14 May 1954). "IBM 701 Speedcoding and Other Automatic-programming Systems". Proceedings of the Symposium on Automatic Programming for Digital Computer. Washington DC, USA: The Office of Naval Research. pp. 106–113. Retrieved 2022-07-04.
- Sammet, Jean E. (1969). Programming Languages: History and Fundamentals. Prentice-Hall.