Programming Language Family Tree

The programming language family tree traces how languages descended from and influenced each other over 75+ years, from Fortran (1957) and LISP (1958) to Rust (2015) and beyond.

The Roots (1950s)

The first high-level languages established the major paradigms. Fortran pioneered imperative scientific computing. LISP established functional programming and dynamic typing. COBOL targeted business computing. These three defined the landscape for decades.

The C Revolution (1970s)

C became the implementation language of choice for operating systems and runtimes. Its descendants — C++, Objective-C — extended it with object-oriented features. C also became the runtime implementation language for Python, Ruby, PHP, and many others.

The OOP Era (1980s–90s)

Smalltalk pioneered pure object-oriented design and influenced Python, Ruby, and Objective-C. Java brought managed runtimes and garbage collection to the mainstream. JavaScript brought dynamic typing to the web.

The Modern Era (2000s–2020s)

Rust revisited systems programming with memory safety. Go brought simplicity and built-in concurrency. Swift and Kotlin modernized mobile development. Each new language synthesizes ideas from its predecessors.

Explore the Family Tree in Graph →