THE PERIODIC TABLE OF PROGRAMMING LANGUAGES




                                                                                                                                                                                                       © Paul Bowler
 A                                                                                                                                                                              E
                 1                                                                                                                                                                                 2


 Analytical Engine
                                                      Visualisation of the evolution of popular programming languages                                                           ENIAC Short
 Order Code                                                                                                                                                                     Code

                                                                         Mechanical                               Functional

 Ft                    Ag                                                                                                                                 Cb                    L
                 3                     4                                                                                                                                 5                         6
                                                                         Imperative                               Dynamic
 Fortran               ALGOL                                             Object Oriented                          Concurrent                              COBAL                 LISP


                                                                         Scripting                                Multi-paradigm

 Sn                    Bs                    Sm                                                                                           P               B                     Lg
                 7                     8                   9                                                                                        10                  11                    12
                                                                         Declarative
 SNOWBOL               BASIC                 Simula                                                                                       PL/1            B                     LOGO




 Fo                    Pc                    St                Sq                 Pg                                    C                 M               Ml                    Sc
                13                   14                   15                 16                 17                                   18             19                  20                    21


 Forth                 Pascal                Smalltalk         SQL                Prolog                                C                 Modula          ML                    Scheme




 Ad                    Cp                    Ef                Oc                 Ps                 Tc                 Ht                Pl              Cl                    Er
                22                   23                   24                 25                 26                 27                28             29                  30                    31


 Ada                   C++                   Eiffel            Objective C        PostScript         Tcl                HyperTalk         Perl            Common LISP           Erlang




 Vb                    Dp                    Jv                Py                 As                 Cf                 Js                Pp              Fs                    Hk
                32                   33                   34                 35                 36                 37                38             39                  40                    41


 Visual BASIC          Delphi                Java              Python             AppleScript        Coldfusion         JavaScript        PHP             F#                    Haskel




Each row represents roughly a decade,                                                                                                                    The colours denote the programming


                                             Cs                Sl                 Gv                 Rb                 G                 Cj
starting on the second row with the 1950's                42                 43                 44                 45                46             47   paradigm that the language in question
up to the 2000's on the final row. The first                                                                                                               originally supported or the primary
row is pre-1950 with the two mechanical                                                                                                                  paradigm for which it is known. Some
programming systems from which all others                                                                                                                languages may have evolved to support
have evolved - the first from around 1837     C#                Scala              Groovy             Ruby               GO                Clojure
                                                                                                                                                         other paradigms over time which are not
created by Charles Babbage and Ada                                                                                                                       shown.
Lovelace.

Periodic Table Of Programming Languages

  • 1.
    THE PERIODIC TABLEOF PROGRAMMING LANGUAGES © Paul Bowler A E 1 2 Analytical Engine Visualisation of the evolution of popular programming languages ENIAC Short Order Code Code Mechanical Functional Ft Ag Cb L 3 4 5 6 Imperative Dynamic Fortran ALGOL Object Oriented Concurrent COBAL LISP Scripting Multi-paradigm Sn Bs Sm P B Lg 7 8 9 10 11 12 Declarative SNOWBOL BASIC Simula PL/1 B LOGO Fo Pc St Sq Pg C M Ml Sc 13 14 15 16 17 18 19 20 21 Forth Pascal Smalltalk SQL Prolog C Modula ML Scheme Ad Cp Ef Oc Ps Tc Ht Pl Cl Er 22 23 24 25 26 27 28 29 30 31 Ada C++ Eiffel Objective C PostScript Tcl HyperTalk Perl Common LISP Erlang Vb Dp Jv Py As Cf Js Pp Fs Hk 32 33 34 35 36 37 38 39 40 41 Visual BASIC Delphi Java Python AppleScript Coldfusion JavaScript PHP F# Haskel Each row represents roughly a decade, The colours denote the programming Cs Sl Gv Rb G Cj starting on the second row with the 1950's 42 43 44 45 46 47 paradigm that the language in question up to the 2000's on the final row. The first originally supported or the primary row is pre-1950 with the two mechanical paradigm for which it is known. Some programming systems from which all others languages may have evolved to support have evolved - the first from around 1837 C# Scala Groovy Ruby GO Clojure other paradigms over time which are not created by Charles Babbage and Ada shown. Lovelace.