Developer Resources

Hello, World! Explained — Every Programming Language Ever Written.

A practical, history-driven tour of 233 languages — from Plankalkül in 1948 to Pkl in 2024 — told through the smallest program anyone writes.

Key takeaways

The print verb is universal — half of all languages use print or a close variant. Ceremony scales with seriousness — Java needs eight lines, Python needs one. The 1960s were the most creative decade, inventing every major paradigm still in use. Mainframe languages never died — COBOL, RPG, and MUMPS still run banks, hospitals, and airlines. Assembly has more variants than any other family, with one per CPU architecture. And the simplest possible program reveals more about a language's philosophy than almost anything else.

"Hello, World!" is the universal first program. Brian Kernighan introduced it in a 1972 Bell Labs tutorial for the B programming language, and it has been the customary way to greet a new language ever since. Type it, run it, see it print — and you know your toolchain works.

But "Hello, World!" is more than a sanity check. It's a fingerprint. The ceremony a language requires to print 13 characters tells you what it values: brevity, safety, structure, hardware control, mathematical purity, or sheer formality. A one-liner versus a fifteen-line program with imports and a class declaration says quite a lot about who the language was designed for.

What follows is a tour through every "Hello, World!" worth seeing — from Plankalkül, the never-implemented 1948 language Konrad Zuse designed in a Bavarian farmhouse, to Pkl, Apple's configuration language from 2024. There are mainstream languages, mainframe relics, esoteric jokes, assembly for every chip family ever shipped at scale, hardware description languages, theorem provers, quantum DSLs, and shader languages that can't actually print but try anyway.

Each card includes a short history — who built it, when, where, and why. Use the search to find a language by name, year, or anything in its story. Try Bell Labs, MIT, or 1972.

01By the numbers

A quick survey of what's in this archive — every working programming language from 1948 to 2024 that left a mark.

233
languages catalogued
75
years covered
12
categories
1948
earliest entry

02Print is the universal verb

Roughly half of all languages use a built-in called print or a close variant. The rest split across a small set of well-worn alternatives that map cleanly to a language's family tree.

~50%
use print
5
main verb families
1
elegant outlier: ?

Why it stays the same

What's constant

  • The intent — print thirteen characters
  • The role of "Hello, World!" as a sanity check
  • One-line solutions for scripting languages
  • String literals delimited by quotes
  • Output via a global function or method call

What changes most

  • The required ceremony — imports, classes, mains
  • How strings are encoded and terminated
  • Whether the verb is a function or operator
  • Where I/O lives — stdlib, kernel, or runtime
  • Conventions around capitalization and newlines
The pattern Shells and PHP use echo. The Ruby and Tcl families use puts. Mainframe and Pascal traditions use write. COBOL and Scheme use display. And the dBase / Clipper / FoxPro lineage uses the elegant ?.

03Ceremony scales with seriousness

Languages built for systems programming, enterprise scale, or formal verification require more boilerplate. Languages built for exploration, scripting, or learning let you print on line one. Both are right for their context.

1
line in Python, Ruby, Lua
8
lines in idiomatic Java
15+
lines in WebAssembly, CICS

Low-ceremony languages

  • Python, Ruby, Lua, Perl, Tcl
  • Bash, AWK, JavaScript
  • BASIC, Logo, Scheme
  • APL, J, BQN

High-ceremony languages

  • Java, C#, Kotlin, Scala
  • COBOL, PL/I, Ada
  • Rust, Go, Swift (boilerplate but small)
  • WebAssembly text format, CIL, JVM bytecode
Best for Picking a language for a project? Match its ceremony to your needs. Scripts and prototypes deserve Python or Ruby. Long-lived systems deserve typed compiled languages with proper module systems.

04The 1960s were the most creative decade

Almost every major programming paradigm was invented in a single decade. Most "modern" languages are refinements and recombinations of ideas from the 60s and early 70s.

9
paradigms from one decade
1962
Simula — first OO language
1958
LISP — recursion, GC, REPL

Inventions of a single decade

LISP (1958, McCarthy at MIT) — lambda calculus, recursion, garbage collection, REPL.
COBOL (1959, committee with Grace Hopper) — readable business programming.
ALGOL 60 (1960, committee) — block structure, BNF grammar, structured programming.
APL (1962, Iverson at IBM) — array programming with mathematical notation.
Simula (1962, Dahl and Nygaard) — the first object-oriented language.
BASIC (1964, Kemeny and Kurtz at Dartmouth) — interactive programming for non-experts.
Logo (1967, Papert at BBN) — teaching language with turtle graphics.
BCPL (1967, Richards at Cambridge) — direct ancestor of B and C.
SETL (1969, Schwartz at NYU) — set-theoretic programming, influenced ABC then Python.

05Esoteric languages are art, not tools

Brainfuck, Malbolge, Shakespeare, Chef, LOLCODE, Rockstar — these exist to prove a point, tell a joke, or test the limits of what counts as a language. They're rarely used to ship software, but they tell you something true about programming as a creative medium.

15
esoteric languages catalogued
8
commands in Brainfuck
240
bytes for Brainfuck compiler

Why they matter

  • They demonstrate what's computationally minimal
  • They explore programming as creative medium
  • They influence "real" language design (FALSE → Brainfuck)
  • They make computer science fun and teachable

What they're not for

  • Production software
  • Performance-critical work
  • Code anyone else will read
  • Anything you want to debug
Best for Code golf competitions, computer science education, art projects, demoscene experiments, and proving you can.

06The mainframe never died

COBOL, PL/I, RPG, Natural, ADABAS, MUMPS, CICS, IMS, PICK — banks, insurance companies, hospitals, airlines, and governments still run on these. Your retirement savings, your medical records, and your last airline ticket likely passed through a language older than most of the people maintaining it.

~70%
of business transactions touch COBOL
17
mainframe / 4GL languages here
60+
years some are still in production

Mainframe languages still in active use

COBOL processes most banking and insurance transactions.
RPG runs IBM i (AS/400) midrange systems at distribution and manufacturing companies.
Natural / ADABAS backs European banking and government systems.
MUMPS / Caché powers Epic Healthcare — most U.S. hospital records pass through it.
CICS handles transactions at airlines, banks, and reservation systems.
PICK / UniVerse runs distribution and retail backends.
ABAP is the language of SAP, the ERP system underneath much of global enterprise.
Tandem TAL runs stock exchanges and ATM networks where downtime is unacceptable.

Best for Maintaining systems that already work. Mainframe-language jobs pay well and are not going away — the cost of rewriting these systems exceeds the cost of keeping them running.

07The collection

Search by name, year, or any keyword from a language's history. Filter by category using the chips below. Cards sort by year of introduction — oldest first.

233 of 233 results

08Best language by use case

Not every language fits every problem. The patterns below come from looking at what's actually used in each space today — across mainstream, embedded, scientific, web, and enterprise work.

Use caseBest fitsWhy
Web frontendJavaScript, TypeScriptBrowser is the runtime; no real alternative
Web backendGo, Python, Node, Ruby, ElixirMature ecosystems with strong concurrency stories
Mobile nativeSwift, Kotlin, Dart (Flutter)First-party tooling and platform integration
Systems / OSC, C++, Rust, ZigDirect hardware control and zero-cost abstractions
Data sciencePython, R, JuliaVast scientific libraries and notebook workflows
Machine learningPython, Mojo, TritonPyTorch and TensorFlow set the standard
Game developmentC++, C#, GDScriptUnity, Unreal, and Godot dominate the engines
EmbeddedC, Rust, AdaPredictable memory and timing guarantees
Scientific HPCFortran, Julia, C++Numerical libraries refined over decades
Financial systemsCOBOL, Java, Q (kdb+)Legacy plus high-performance time-series
Smart contractsSolidity, Move, CairoDesigned around blockchain semantics and ZK proofs
Formal verificationCoq, Lean, Dafny, TLA+Mathematical proofs about program correctness

09How to read the cards

Each card carries the same five pieces of information — name, year, category, code, history. A few conventions worth knowing before you start exploring.

1
Mainstream examples show idiomatic style — the way most developers actually write it today, not the most minimal possible form.
2
Assembly examples target Linux syscalls where applicable. Real-world assembly varies by operating system and toolchain; treat these as illustrative.
3
Mainframe and 4GL examples reflect the canonical idiom for that platform. A surprising number of these languages are still in active production despite being decades old.
4
Esoteric languages are real — they all have working interpreters or compilers — but they exist primarily as creative or theoretical exercises.
5
Some languages can't really print. Shader languages, theorem provers, and pure constraint languages have no traditional I/O. Their cards show the closest equivalent.

10How to pick your next language

A quick framework for choosing a language to learn next. Read each rule in order — the first one that fits is usually your answer.

1
Learn it for the job if you have a specific role in mind — match the language to the work (Swift for iOS, Kotlin for Android, Go or Python for backend).
2
Learn it for the paradigm if you want to rewire how you think — Haskell for pure functional, Prolog for logic, APL for array, Smalltalk for objects.
3
Learn it for the platform if a system you care about requires it — Rust for memory-safe systems work, Solidity for Ethereum, Cairo for ZK rollups.
4
Learn it for the joy if you just want a different lens — Forth, Lisp, Elixir, or Zig will all reward curiosity.
5
Don't learn it if you can't articulate why. New languages are cheap to start and expensive to master — pick one and finish a real project before moving on.

11Final thoughts

Every language is a worldview. "Hello, World!" is how it says good morning.

What's striking after assembling all 233 of these is how much continuity there is. The verbs change — DISPLAY in COBOL, println in Rust — but the gesture is identical. A 1959 RPG programmer and a 2024 Pkl developer would recognize each other's intent immediately.

Languages are tools, and tools are conservative. They evolve more slowly than the discourse around them suggests. Most of what's "new" in 2026 is a careful repackaging of ideas Niklaus Wirth, John McCarthy, Alan Kay, or Tony Hoare were already working on in the 1960s and 70s. That's not a criticism. It's an inheritance — and a working programmer today is in conversation with seventy-five years of people who tried to make this medium better.

If you've never written in one of these, pick the strangest-looking one and try it. APL. Forth. Prolog. Smalltalk. Each will rewire how you think about computation. That's the real reason to learn a new language — not for the job market, but for the lens.

This article was last updated on May 24, 2026.

Get in touch.

Questions, corrections, or a language you think belongs in the archive? I'd love to hear from you.

I usually reply within 1–2 business days.