Mainframe 101 · Part 02

Introduction to Mainframe Programming Languages

Part One: Learning to Speak the Machine's Native Tongues

Zubair Idris Aweda 9 min read Interactive

What Is Programming, Really?

Programming is the process of writing instructions a computer can follow. A computer doesn't inherently know how to calculate interest, validate an address, or transfer funds — someone has to describe every step, precisely and unambiguously. Programming languages exist to make that description possible in a way humans can write and machines can execute.

Types of Programming Languages

Low-level vs. High-level

Low-level (assembly) maps closely to hardware — full control, less readable. High-level (Python, Java) abstracts hardware away for easier writing.

Compiled vs. Interpreted

Compiled (COBOL, Java) is translated ahead of time into an executable. Interpreted (Python, REXX) is read line-by-line at runtime.

Procedural

Structures programs as a sequence of instructions and procedures — COBOL and C are classic examples.

Object-Oriented

Organises code around objects that bundle data and behaviour together — Java is the mainframe's leading example.

Programming vs. Scripting Languages

On a mainframe, this split maps cleanly onto how work divides:

Programming languages (COBOL, PL/I, HLASM, Java) build the actual business applications — compiled, rigorously tested, run millions of times a day.

Scripting languages (REXX, CLIST — covered in Part Two) automate operational tasks: submitting jobs, manipulating datasets, orchestrating workflows.

Language Explorer

Click a language to see a snippet, its era, and where it actually shows up in production today.

Mainframe Language Explorer

Select a language below

Where Should a Beginner Start?

Answer honestly, and get a recommendation based on what a lot of real mainframers actually did first.

Which language should I learn first?

Summary

From HLASM's closeness to the hardware, through COBOL and PL/I's decades of business logic, to Java, Python, and Go bringing z/OS into step with modern development — most real applications layer several of these languages together rather than picking just one.

Part Two of this series covers mainframe scripting languages: REXX, CLIST, and shell.

ZIA
Zubair Idris Aweda
Software Engineer · Technical Writer