COBOL is a high-level programming language first developed by the CODASYL Committee (Conference on Data Systems Languages) in 1960. Since then, responsibility for developing new COBOL standards has been assumed by the American National Standards Institute (ANSI).
Three ANSI standards for COBOL have been produced: in 1968, 1974 and 1985. A new COBOL standard introducing object-oriented programming to COBOL, is due within the next few years.
The word COBOL is an acronym that stands for COmmon Business Oriented Language. As the the expanded acronym indicates, COBOL is designed for developing business, typically file-oriented, applications. It is not designed for writing systems programs. For instance you would not develop an operating system or a compiler using COBOL.
COBOL is a simple language (no pointers, no user defined functions, no user defined types) with a limited scope of function. It encourages a simple straightforward programming style. Curiously enough though, despite its limitations, COBOL has proven itself to be well suited to its targeted problem domain (business computing). Most COBOL programs operate in a domain where the program complexity lies in the business rules that have to be encoded rather than in the sophistication of the data structures or algorithms required. And in cases where sophisticated algorithms are required COBOL usually meets the need with an appropriate verb such as the SORT and the SEARCH.
Every COBOL (sub)program is composed of four divisions, occuring in this order: IDENTIFICATION, ENVIRONMENT, DATA, and PROCEDURE. Their roles are as follows:
- IDENTIFICATION: contains information that helps to identify the program, such as program name (the only required piece of info), author, date written, etc.
- ENVIRONMENT: supplies installation-specific information; that is, it tells what computer equipment is needed to run the program. Its two sections are the configuration section, which is just about useless, and the Input-Output section, in which is established the mapping from file names used in the program to actual files on the computer system.
- DATA: data used by the program is declared/described. The file section describes the record structures of files used by the program; the working-storage section describes temporary (i.e., non-persistent) data, which exists only during program execution. The data division of a subprogram also includes a linkage section, which is where the formal parameters (called “arguments” in COBOL terminology) are described.
- PROCEDURE: contains executable instructions! Execution begins with the first paragraph, which is thus usually designed to act as the “main” program. To make an analogy to Ada/Pascal, each paragraph is like a parameter-less procedure subprogram having no local data.
COBOL is a simple language with a limited scope of function. And that is the way it used to be but the introduction of OO-COBOL has changed all that. OO-COBOL retains all the advantages of previous versions but now includes -
- User Defined Functions
- Object Orientation
- National Characters – Unicode
- Multiple Currency Symbols
- Cultural Adaptability (Locales)
- Dynamic Memory Allocation (pointers)
- Data Validation Using New VALIDATE Verb
- Binary and Floating Point Data Types
- User Defined Data Types

RECENT COMMENTS