The A-0 system (Arithmetic Language version 0) was an early[1] compiler related tool developed for electronic computers, written by Grace Murray Hopper[2] in 1951 and 1952 originally for the UNIVAC I.[3] The A-0 functioned more as a loader or linker than the modern notion of a compiler.[4] [5] [6] 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,[7] 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.[8] 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.[9]

See also

edit

Notes

edit
  1. ^ "List of early compilers and assemblers".
  2. ^ 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.
  3. ^ Hopper "Keynote Address", Sammet pg. 12
  4. ^ Hopper, Grace. "Keynote Address". Proceedings of the ACM SIGPLAN History of Programming Languages (HOPL) conference, June 1978. doi:10.1145/800025.1198341.
  5. ^ Bruderer, Herbert. "Did Grace Hopper Create the First Compiler?".
  6. ^ Strawn, George; Strawn, Candace (2015). "Grace Hopper: Compilers and Cobol". IT Professional. 17 (Jan.-Feb. 2015): 62–64. doi:10.1109/MITP.2015.6.
  7. ^ * "PAPERS: Automatic Programming: The A 2 Compiler System -- Part I". Computers and Automation. 4 (9): 25–29. Sep 1955. Retrieved 2020-09-05.
  8. ^ Ceruzzi, Paul (1998). A History of Modern Computing. The MIT Press. ISBN 9780262032551.
  9. ^ "Heresy & Heretical Open Source: A Heretic's Perspective".
edit

References

edit
  1. 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.
  2. Hopper, Grace (16 February 1955). "Automatic Coding for Digital Computers" (PDF). High Speed Computer Conference (Louisiana State University) February 1955. Remington Rand.
  3. Hopper, Grace. "Keynote Address". Proceedings of the ACM SIGPLAN History of Programming Languages (HOPL) conference.
  4. Ridgway, Richard K. (1952). "Compiling Routines". Proceedings of the 1952 ACM national meeting (Toronto) ACM '52.
  5. Sammet, Jean (1969). Programming Languages: History and Fundamentals. Prentice-Hall. pp. g. 12.