A-0 System

From Wikipedia, the free encyclopedia
Jump to: navigation, search

The A-0 system (Arithmetic Language version 0), written by Grace Hopper in 1951 and 1952 for the UNIVAC I, was the first compiler ever developed for an electronic computer.[1] 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 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.[2] Customers were provided the source code for A-2 and invited to send their improvements back to UNIVAC. Thus A-2 was an early, and perhaps the first, example of free and open-source software. [3]

See also[edit]

External links[edit]


  1. ^ Hopper "Keynote Address", Sammet pg. 12
  2. ^ Ceruzzi, Paul (1998). A History of Modern Computing. The MIT Press. 
  3. ^ "Heresy & Heretical Open Source: A Heretic's Perspective". 


  1. Hopper, Grace. "Proceedings of the Association for Computing Machinery Conference (Pittsburgh) May 1952".  |chapter= ignored (help)
  2. Hopper, Grace. "High Speed Computer Conference (Louisiana State University) February 1955". Remington Rand.  |chapter= ignored (help)
  3. Hopper, Grace. "Proceedings of the ACM SIGPLAN History of Programming Languages (HOPL) conference".  |chapter= ignored (help)
  4. Ridgway, Richard E. "Proceedings of the 1952 ACM national meeting (Toronto) ACM '52".  |chapter= ignored (help)
  5. Sammet, Jean (1969). Programming Languages: History and Fundamentals. Prentice-Hall. pp. g. 12.