Look Up Another Term

Definition: COBOL


(COmmon Business Oriented Language) A high-level programming language primarily used for business development on mainframes and minicomputers throughout the 1970s and 1980s. Officially adopted in 1960, COBOL was one of the first compiled languages in a world where assembly languages were the norm. COBOL stemmed from FLOWMATIC, which was developed in the mid-1950s by Grace Murray Hopper (later Rear Admiral Hopper) for the UNIVAC I. As of 2020, COBOL applications still run in many companies, and changes to the code are difficult because COBOL programmers are few and far between. See assembly language.

COBOL is very wordy, but its verbosity makes it very readable for a novice. For example, the COBOL version of grosspay = hours*rate is multiply rate by hours giving grosspay (see COBOL fingers). COBOL is structured into the following divisions:

 Division Name    Contains
 IDENTIFICATION   Program identification.
 ENVIRONMENT      Types of computers used.
 DATA             Buffers, constants, work areas.
 PROCEDURE        The processing (program logic).


The following COBOL example for an IBM 370 mainframe converts a Fahrenheit number to Celsius. This example performs the operation on the operator's terminal.

  IDENTIFICATION DIVISION.
  program-ID.  example.

  ENVIRONMENT DIVISION.
  configuration section.
  SOURCE-COMPUTER.   IBM-370.
  OBJECT-COMPUTER.   IBM-370.

  DATA DIVISION.
  working-storage section.
  77 FAHR  picture 999.
  77 CENT  picture 999.

  PROCEDURE DIVISION.
  display 'Enter Fahrenheit ' upon console.
  accept FAHR from console.
  compute CENT = (FAHR- 32) * 5 / 9.
  display 'Celsius is ' CENT upon console.
  goback.


IBM COBOLs
In 1994, IBM dropped support of OS/VS COBOL, which conforms to ANSI 68 and 74 standards and limits a program's address space to 16 bits. IBM's VS COBOL II (1984) and COBOL/370 (1991) conform to ANSI 85 standards with 31-bit addressing, allowing programs to run "above the line."

COBOL/370 is more compliant with IBM's AD/Cycle and has more string, math and date functions, including four-digit years. It allows development through a PC window and provides enhanced runtime facilities. See AD/Cycle.