Skip to content

Instantly share code, notes, and snippets.

@WardBrian
Created April 20, 2026 13:57
Show Gist options
  • Select an option

  • Save WardBrian/f7812d0cb96a8f3c228db8cdf3fdf89c to your computer and use it in GitHub Desktop.

Select an option

Save WardBrian/f7812d0cb96a8f3c228db8cdf3fdf89c to your computer and use it in GitHub Desktop.
The Genealogy of Programming Languages (30K Ft Edition) by Robert Muller

The Genealogy of Programming Languages (30K Ft Edition)

Bob Muller — Jan. 2020

1600                                                   Symbolic Algebra

...                                                         |
                                                                           Set Theory
1879                                                   Symbolic Logic

...                                                         |
                                 Godel
1936    Turing Machine                             Untyped Lambda Calculus
...                                                                   \
           |                                                           \
           |                                                |          Typed Lambda Calculus
1945   von Neumann IAS Computer                                       
           |                                                |                 |
        Assembly        
-----------|--------------------------------------------------------------------------------------
           |
1950       |                                                |
           |
           |
        FORTRAN
           |                                                |
1955       |
           |
           |                                         
           +-> Algol                                       LISP
           |    |                                           |
1960       v    |                                           |                   APL
                |                                           |                    |
                |                                           |                    v      SNOBOL
                +-> CPL                                     |                             |    
                +----|-----> Simula                         |                             v
1965            |    |         |                         LISP 1.5 --------> ISWIM
                |    |         |                            |                 |
                |   BCPL       |           +----- Logo <----+                 |
                |    |         |           v                |                 |
                |    B         +-----> Smalltalk            |                 |
1970  Pascal <--+    |         |           |                |                 |
       |        |    C         v           |                |                 |
       |        |    |                     |                |                 |
       |        +--->|-------------------->|--------+       |            ML <-+--+
       +-> CLU  |    |                     |        v       |            |       |
1975   |    v   v    |                     |      Scheme <--+            |       v
       |             |                     |        |       |            |      SASL
       +----> Modula |    +======+=====+===+==+     |       |            |       |
       |         |   |    |      |     |   |  |     |       |            |      KRC
       +-> Ada   v   |    v      v     v   v  |     |       |            |       |          Matlab
1980   |    |        +--->+----->+---->+      |     |       |            |       |             |
       v    v   B    |    |      |     |      |     |       |            |       v             v
                |    |    v      |     v      |     |       |            +--> Miranda ---+     
                |    |   C++     |   ObjC     |     |       |            |               |     
                |    |    |      |     |      |     |    Common   SML <--+-------->+     |     
1985            |    |    |      |     |      |     |     LISP     |     |         |     |     
                |    |    |      |     |      |     |       |      v     |         |     v     
               ABC   |    |      |     |      |     |       v            +-> Caml  |  Haskell  
                |    |    |      |     |      |     |                    |    |    |     |     
                |    |    |      |     |      |     |                    v    |    |     |     
1990            |    |    |      v     |      |     +----->+                  |    |     |     
       Python <-+    |    +---> Oak    |      |     |      |                  |    |     |     
        |            |    |      |     |      |     v      |                  |    |     |
        |            |    v      |     |      +--> Ruby    |                  |    |     |
        |            |           |     |      v            |                  |    |     |
1995    |    PHP     |         Java    |  JavaScript <-----+---> R          OCaml  |     |
        |     |      |           |     |      |            |     |            |    |     |
        |     v      |           |     |      |            |     v            |    |     |
        |            |        +--+     |      |            |                  |    v     |
        |            |        |        |      |            |                  |   Agda <-+
2000    |            |   C# <-+        |      |            |                  |    |     |
        |            |    |   |        |      |            |                  |    v     |
        |            |    v   |        |      |            |                  |          |
        |       +----+        |        |      |            |                  |          |
        |       |    |        |        |      |            |                  |          |
2005    |       v    |      GJava      |      |    +-------+            F# <--+          |
        |      Rust  |        |        |      |    |       |             |    |          |
        +---+   |    |        |   +----+      |    |       |             v    |          |
        |   v   |    |        |   |    |      |    v       |                  |          |
        |   Go  |    |        |   v    v      |  Julia     |                  |          |
2010    |   |   |    |        | Swift         |    |     Racket               |          |
        |   |   |    |        |   |           |    |                          |          |
        |   |   |    |        |   v  Type <---+--->|--------------> Elm <-----+<---------+
        |   |   |    |        |      Script   |    |                 |        |          |
        |   |   |    |        |        |      +--->|---------------->|------->+----+     |
2015    |   |   |    |        |        v      |    |                 |        |    |     |
        |   |   |    |        |               |    v                 |        |    v     |
        v   v   v    v        v               v                      v        v  Reason  v

�Crowded out: COBOL, Basic, PL/1, Bliss, Logo, SETL, Prolog, Delphi, Eiffel, Dylan, Self, Erlang, Lua, Scala, Flash, Clojure, Groovy, Scratch, Kotlin, ... .

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment