A very short introduction to COBOL
COBOL is one of those languages you keep hearing about, one of the remains of the past.
Turns out it’s the language that makes the world go around, in particular in banks and financial institutions. I read somewhere that over 70% of business transactions are made through programs written in COBOL.
There are various reasons for that. First, the language was designed for that use case.
After all, it’s called COmmon Business-Oriented Language.
Kind of boring, for a name. But it goes straight to the point.
Another reason is that it’s old. Designed in 1959, it’s been used from the start to make those systems, and no one is going to change those programs that run fine.
Those programs are so important that they are just being maintained and improved, but never rewritten from scratch.
Anyway, you can read about the history of COBOL on Wikipedia. The goal here is to make a quick introduction to the language, so the next time you hear COBOL, you know what it looks like.
Install the GNU COBOL compiler
Install gnu-cobol
.
On a Mac, use Homebrew:
brew install gnu-cobol
or use any way you can install GNU commands on your Operating System (hint: Homebrew also works on Win/Linux)
Once this is done, you’ll have access to the cobc
command.
This is the man page for it:
man cobc
Some instructions I found online involved installing an IDE (Integrated Development Environment) but you don’t need one to test things out.
Write your COBOL programs in a .cob
file, and compile it using
cobc -x <filename>.cob
Write the COBOL Hello, World!
I created a hello.cob
file and opened it in VS Code.
Immediately a popup told me some extensions could help with .cob
files. I’m impressed.
I’m going to install the first and most popular, named COBOL, to provide syntax highlighting.
Now add this code to the hello.cob
file:
HELLO
IDENTIFICATION DIVISION.
PROGRAM-ID. HELLO.
PROCEDURE DIVISION.
DISPLAY "Hello, World!".
STOP RUN.
Compile it from the command line:
cobc -x hello.cob
and then run the binary file generated:
./hello
This was simple.
Sum two numbers received from the user
Now create a sum.cob
file:
HELLO
IDENTIFICATION DIVISION.
PROGRAM-ID. ADDITION.
DATA DIVISION.
WORKING-STORAGE SECTION.
77 NUM_1 PIC 9(4).
77 NUM_2 PIC 9(4).
77 SOLVE_SUM PIC 9(4).
PROCEDURE DIVISION.
PARA.
DISPLAY "First number: ".
ACCEPT NUM_1.
DISPLAY "Second number: ".
ACCEPT NUM_2.
COMPUTE SOLVE_SUM = NUM_1 + NUM_2.
DISPLAY "Sum: " SOLVE_SUM.
STOP RUN.
Compile it:
cobc -x sum.cob
Run it:
./sum
and you’ll be asked for 2 numbers, then the program calculates the sum:
Note that I have no idea how those programs run, the instructions meanings, but I just wanted to try it out.
I think this is all the COBOL I’ll ever write in my life.
→ I wrote 17 books to help you become a better developer, download them all at $0 cost by joining my newsletter
→ JOIN MY CODING BOOTCAMP, an amazing cohort course that will be a huge step up in your coding career - covering React, Next.js - next edition February 2025