The A-0 system (Arithmetic Language version 0) was an early compiler related tool developed for electronic computers, written by Grace Murray Hopper in 1951 and 1952 originally for the UNIVAC I. The A-0 functioned more as a loader or linker than the modern notion of a compiler. A program was specified as a sequence of subroutines and its arguments. The subroutines were identified by a numeric code and the arguments to the subroutines were written directly after each subroutine code. The A-0 system converted the specification into machine code that could be fed into the computer a second time to execute the said program.
The A-0 system was followed by the A-1, A-2, A-3 (released as ARITH-MATIC), AT-3 (released as MATH-MATIC), and B-0 (released as FLOW-MATIC).
The A-2 system was developed at the UNIVAC division of Remington Rand in 1953 and released to customers by the end of that year. Customers were provided the source code for A-2 and invited to send their improvements back to UNIVAC. Thus, A-2 could be considered an example of the result of an early philosophy similar to free and open-source software.
See also
Notes
External links
- Hopper, Grace (May 1952). "The Education of a Computer" (PDF). Proceedings of the Association for Computing Machinery Conference (Pittsburgh) May 1952. pp. 243–249. doi:10.1145/609784.609818.
- Hopper, Grace (16 February 1955). "Automatic Coding for Digital Computers" (PDF). High Speed Computer Conference (Louisiana State University) February 1955. Remington Rand.
- Hopper, Grace. "Keynote Address". Proceedings of the ACM SIGPLAN History of Programming Languages (HOPL) conference.
- Ridgway, Richard K. (1952). "Compiling Routines". Proceedings of the 1952 ACM national meeting (Toronto) ACM '52.
- Sammet, Jean (1969). Programming Languages: History and Fundamentals. Prentice-Hall. pp. g. 12.
References
"List of early compilers and assemblers". http://shape-of-code.coding-guidelines.com/2017/05/21/evidence-for-28-possible-compilers-in-1957 ↩
Ridgway, Richard (1952). "Compiling routines". Proceedings of the 1952 ACM national meeting (Toronto) on - ACM '52. pp. 1–5. doi:10.1145/800259.808980. ISBN 9781450379250. S2CID 14878552. {{cite book}}: ISBN / Date incompatibility (help) 9781450379250 ↩
Hopper "Keynote Address", Sammet pg. 12 ↩
Hopper, Grace. "Keynote Address". Proceedings of the ACM SIGPLAN History of Programming Languages (HOPL) conference, June 1978. doi:10.1145/800025.1198341. https://dl.acm.org/doi/pdf/10.1145/800025.1198341 ↩
Bruderer, Herbert. "Did Grace Hopper Create the First Compiler?". https://cacm.acm.org/blogs/blog-cacm/268001-did-grace-hopper-create-the-first-compiler/fulltext ↩
Strawn, George; Strawn, Candace (2015). "Grace Hopper: Compilers and Cobol". IT Professional. 17 (Jan.-Feb. 2015): 62–64. doi:10.1109/MITP.2015.6. https://www.computer.org/csdl/magazine/it/2015/01/mit2015010062/13rRUxCitFF ↩
* "PAPERS: Automatic Programming: The A 2 Compiler System -- Part I". Computers and Automation. 4 (9): 25–29. Sep 1955. Retrieved 2020-09-05. "PAPERS: Automatic Programming: The A 2 Compiler System -- Part II". Computers and Automation. 4 (10): 15–27. Oct 1955. Retrieved 2020-09-05. https://archive.org/details/sim_computers-and-people_1955-09_4_9/page/n24/ ↩
Ceruzzi, Paul (1998). A History of Modern Computing. The MIT Press. ISBN 9780262032551. 9780262032551 ↩
"Heresy & Heretical Open Source: A Heretic's Perspective". http://www.infoq.com/presentations/Heretical-Open-Source ↩