What is Common Business-Oriented Language (COBOL)?

COBOL (Common Business-Oriented Language) was released in 1959 by CODASYL (Conference/Committee on Data Systems Languages), which included States Navy Rear Admiral Grace "Amazing Grace" Murray Hopper — renowned computer scientist and mathematician. Although COBOL is not used to write any OS, COBOL pushed many vendors to create newer OSs and hardware (IBM, GE, NEC and other mainframe and midrange manufacturers). In that aspect, COBOL is worth mentioning here.

By Jonathan Schilling — Own work, CC BY-SA 4.0, https://commons.wikimedia.org/w/index.php?curid=123089173

COBOL programming is closely tied to MVS as well as VSAM (Virtual Storage Access Method) files where a field redefines another field — multiple fields inside a larger field. COBOL is column delimited. For example, PROGRAM-ID. must start on the eighth (8th) column and all indentation is always four-characters long on a fixed 71-column line with columns 72 to 80 for comments. As such, when writing COBOL, I have used a ruler as the one in the Hello World! code below, which can be deleted after finishing the code.

        *        1         2         3         4         5         6         7
        * 345678901234567890123456789012345678901234567890123456789012345678901
                   PROGRAM-ID. HELLO.
                   PROCEDURE DIVISION.
                           DISPLAY "HELLO WORLD".
                           STOP RUN.

Once compiled, COBOL is run using JCL, which works as a DOS batch file. COBOL can be considered as a report writer similar to Report Program Generator (RPG), which was released in 1959 by IBM and later replaced by Structured Query Language (SQL) in 1974 also by IBM. Since 1983 with the release of Db2 by IBM, the common setup has included this relational database rather than VSAM files.

Aside from IBM, the biggest vendor of products (solutions) related to COBOL is Micro Focus, which sells a mainframe emulation application that universities use when studying COBOL and has even released Visual COBOL that can compile "directly to Java bytecode deployed to the Java Virtual Machine (JVM), or to Microsoft intermediate language for Microsoft .NET." (07/2022 data sheet).

On a personal note, COBOL has a special place in my heart, as the saying goes. My brother learned COBOL at IBM in the late 1980s and teaches COBOL at a university abroad. At the same time, SQL, the replacement for RPG, is the language I teach at a local university.