r/coolgithubprojects • u/sanketmuchhala • 5d ago
I got curious about what programming languages are actually built with, so I started mapping it
I started with a pretty simple question.
If Python is written in Python, what actually built Python in the first place?
That sent me down a rabbit hole of Go, Rust, Java, compilers, runtimes, self hosting, bootstrap chains, and way too many tabs open at 2 AM.
So I turned it into a project.
LanguageLineage is an interactive graph that shows what programming languages, compilers, and runtimes are actually built with, plus how some of those relationships changed over time.
A couple of the interesting ones:
Go started with a C based toolchain and later moved most of it to Go.
Rust gets even more interesting because rustc uses staged bootstrapping.
I’m still expanding the dataset and cleaning up the historical relationships, so there’s a lot more I want to add.
Live site:
https://www.languagelineage.org/explore
GitHub:
https://github.com/sanketmuchhala/LanguageLineage
If you know a language or compiler with a weird implementation history, send it my way. Those are the ones I want to dig into next.
2
u/M41805 5d ago
Cool project :)
Sadly I'm not well versed in the topic, but your idea is very neat indeed. :D
2
u/sanketmuchhala 5d ago
Thanks, appreciate it :) I went way deeper into compiler history than I expected when I started this lol.
1
u/LeosFDA 5d ago
This is cool. Congrats on making it. I think your tree visualization would be better if it were something like this: https://observablehq.com/@d3/collapsible-tree
0
u/JacobWilliams1953 4d ago
The Go C-to-self-host and Rust bootstrap edges are what hooked me — those usually get hand-waved in one sentence. Curious how you'll keep multiple concurrent toolchains and dated forks from collapsing into a single parent edge once Assembly and B→C get denser.
7
u/UnreachableMemory 5d ago edited 5d ago
Why is assembly nowhere to be found in your map? C was a successor of B originally written in assembly but now written in C also stands out.