The Most Influential Programming Languages
Method
Every language in the dataset that has a cited influence relationship is a node. An edge means one language's design influenced another's. Standard PageRank rewards languages that were influenced by many things; that's backwards for this question, so the edges are reversed before scoring — rank flows from a descendant back to its influences, and accumulates on root ancestors. The result is a reverse PageRank with damping 0.85, computed by scripts/computeCentrality.ts directly from the dataset on every build. Descendant counts are computed separately, by simple forward reachability: everything downstream of a language, however many hops away.
Independent PageRank implementations commonly differ by a few tenths of a percent depending on convergence tolerance and how dangling nodes are handled — the rank order and the descendant counts are what the claim rests on, and those are exact.
Ranking
| Rank | Language | PageRank | Descendants |
|---|---|---|---|
| 1 | Lisp | 8.18% | 66 (47%) |
| 2 | ALGOL | 6.05% | 67 (48%) |
| 3 | ML | 4.44% | 48 (34%) |
| 4 | C | 2.78% | 51 (36%) |
| 5 | Haskell | 2.77% | 37 (26%) |
| 6 | Simula | 2.61% | 47 (33%) |
| 7 | Pascal | 2.25% | 47 (33%) |
| 8 | Smalltalk | 1.96% | 45 (32%) |
| 9 | Hope | 1.95% | 40 (28%) |
| 10 | Python | 1.94% | 22 (16%) |
| 11 | Speedcoding | 1.79% | 59 (42%) |
| 12 | Fortran | 1.77% | 58 (41%) |
| 13 | BCPL | 1.46% | 53 (38%) |
| 14 | Miranda | 1.40% | 39 (28%) |
| 15 | Java | 1.34% | 19 (13%) |
The C/C++ implementation closure
A different graph, a different question: not who influenced whom, but what was actually built with what. Following compiler, runtime, and bootstrap chains back to their root, 108 of 171 nodes (63%) in the dataset trace their implementation lineage back to C or C++.
The calculation
Nothing on this page is hand-transcribed. The script that produced it is public: scripts/computeCentrality.ts. Its output, the exact numbers behind this table, is downloadable as centrality.json.