Symbolic Optimal Assembly Program

SOAP II Coding form, 1957

The Symbolic Optimal Assembly Program (SOAP) is an assembler for the IBM 650 Magnetic Drum Data-Processing Machine, an early computer first used in 1954. It was developed by Stan Poley at the IBM Thomas J. Watson Research Center.[1] SOAP is called "Optimal" (or "Optimum") because it attempts to store generated instructions on the storage drum to minimize the access time from one instruction to the next. SOAP is a multi-pass assembler, that is, it processes the source program more than once in order to generate the object program.

The first version of SOAP was succeeded by SOAP II in 1957,[2] which supported additional hardware features such as index registers and magnetic core memory, then SOAP IIA in 1958,[3] SOAP 2L, SOAP 2L Tape, SOAP 4000, and SOAP 42 in 1961.[4] SOAP was used as a backend to the FOR TRANSIT compiler in 1957.[1]

Donald Knuth independently produced versions named SOAP III in 1958[5] and SUPERSOAP in 1959[6] at Case Institute of Technology, now part of Case Western Reserve University in Cleveland, Ohio. The US National Bureau of Standards, under the direction of Herbert Howe, also wrote a version of SOAP, called ISOPAR, said to significantly improve optimization.[7]

  1. ^ a b Lorenzo, Mark Jones (2019). The History of the Fortran Programming Language. p. 162. ISBN 9781082395949. Retrieved Sep 28, 2020.
  2. ^ IBM Corporation (1957). SOAP II for the IBM 650 Data Processing System (PDF). Retrieved Sep 27, 2020.
  3. ^ IBM Corporation (1958). IBM 650 Data Processing System Bulletin. Retrieved Sep 27, 2020.}
  4. ^ IBM Corporation (1961). SOAP 2L, SOAP 2L Tape, SOAP 4000, and SOAP 42 (PDF). Retrieved Sep 27, 2020.
  5. ^ "SOAP III". Online Historical Encyclopaedia of Programming Languages. Retrieved Sep 27, 2020.
  6. ^ Knuth, Donald E. (1959). SUPERSOAP Assembly System for the Augmented 650 (PDF). Retrieved Sep 27, 2020.
  7. ^ Howe, Herbert. ISOPAR: a new and improved symbolic optimizing assembly routine for the IBM 650 (PDF). Retrieved Sep 28, 2020.