Das A-0 System (Arithmetic Language Version 0), das von Grace Murray Hopper in den Jahren 1951 und 1952 für den UNIVAC I geschrieben wurde, war ein frühes compilerbezogenes Werkzeug, das für elektronische Computer entwickelt wurde. Der A-0 funktionierte mehr wie ein Lader oder Linker als der moderne Begriff eines Compilers. Ein Programm wurde als eine Folge von Unterprogrammen und Argumenten spezifiziert. Die Unterprogramme wurden durch einen numerischen Code identifiziert, und die Argumente für die Unterprogramme wurden direkt nach jedem Unterprogrammcode geschrieben. Das A-0-System wandelte die Spezifikation in Maschinencode um, der ein zweites Mal in den Computer eingegeben werden konnte, um das besagte Programm auszuführen.
Dem A-0-System folgten A-1, A-2, A-3 (veröffentlicht als ARITH-MATIC), AT-3 (veröffentlicht als MATH-MATIC) und B-0 (veröffentlicht als FLOW-MATIC).
Das A-2-System wurde 1953 bei der UNIVAC-Abteilung von Remington Rand entwickelt und Ende desselben Jahres an die Kunden ausgeliefert. Den Kunden wurde der Quellcode für A-2 zur Verfügung gestellt und sie wurden aufgefordert, ihre Verbesserungen an UNIVAC zurückzuschicken. Somit könnte A-2 als ein Beispiel für das Ergebnis einer frühen Philosophie betrachtet werden, die der von freier und quelloffener Software ähnelt.