FARGO (
fourteen-o-one automatic report generation operation) was the predecessor to the
RPG programming language. FARGO was more of a utility program than a programming language, whereas RPG had a program generation process that produced an executable object.
A transitional tool
The idea behind FARGO was to facilitate ease of transition for
IBM 407 Accounting Machine technicians to the new
IBM 1400 series of computers. The 1400 series had two
assemblers;
Symbolic Programming System
The IBM 1401 Symbolic Programming System (SPS) was an assembler that was developed by Gary Mokotoff, IBM Applied Programming Department, for the IBM 1401 computer, the first of the IBM 1400 series. One source indicates that "This programming sys ...
(SPS) and
Autocoder
Autocoder is any of a group of assembly language, assemblers for a number of IBM computers of the 1950s and 1960s.
The first Autocoders appear to have been the earliest assemblers to provide a Macro (computer science), macro facility.
Terminolo ...
(a more advanced assembler which required more memory than SPS). These represented a significant paradigm shift and learning curve for the technicians who were accustomed to wiring a
control panel to direct input, output, control and counter operations (add, subtract). Multiplication and division operations were possible but their practicality was limited.
Tabulator machine operations were directed by impulses emitted in a machine cycle; hence, FARGO emulated the notion of a cycle. FARGO coordinated the concept of coding sheets that closely approximated the principles of wiring control panels of tabulating machines. Early FARGO training material showed the wiring control of panels vs. coding sheet relationships.
Programs did not require compilation
Another important feature of FARGO programs is that they did not require compilation. Instead, specification cards were placed into the FARGO program deck at appropriate locations and then simply run with the data cards at the end of the program deck. FARGO was designed for IBM 1401 card systems with at least 4000 positions of
Core storage.
Backward compatibility
IBM historically placed emphasis on backward compatibility, and FARGO and 1400 Autocoder continued to be used in some
IBM System/360
The IBM System/360 (S/360) is a family of mainframe computer systems that was announced by IBM on April 7, 1964, and delivered between 1965 and 1978. It was the first family of computers designed to cover both commercial and scientific applica ...
shops by running in "Emulation" mode.
COBOL
COBOL (; an acronym for "common business-oriented language") is a compiled English-like computer programming language designed for business use. It is an imperative, procedural and, since 2002, object-oriented language. COBOL is primarily us ...
,
FORTRAN and
RPG RPG may refer to:
Military
* Rocket-propelled grenade, a shoulder-launched anti-tank weapon
**''Ruchnoi Protivotankoviy Granatomyot'' (Russian: ''Ручной Противотанковый Гранатомёт''), hand-held anti-tank grenade laun ...
languages did not require emulation because System/360 versions were provided.
External links
*{{cite book
, last = IBM
, title = FARGO for IBM 1401
, url = http://bitsavers.org/pdf/ibm/1401/C24-1464-3_1401_fargo.pdf
, year = 1964
, id = C24-1464-3
, format = PDF
, df =
Procedural programming languages
IBM software
Programming languages created in the 1960s