What are programming languages written in? Mostly C: 48 of the languages and tools in the dataset have a current compiler or runtime written in C, while 27 are self-hosted and compile themselves. This poster groups 150 languages and tools by the language their implementation is written in today, from 186 cited relationships.
Select the poster for the full-size PNG. Generated from the Language Lineage dataset v5.0; the table below lists every card as text.
The poster is licensed CC BY 4.0, like the dataset it is drawn from: print it, put it in slides or course notes, or post it, with credit to Language Lineage and a link to this page. To embed it:
<a href="https://www.languagelineage.org/posters/programming-language-implementation-family-tree"><img src="https://www.languagelineage.org/posters/programming-language-implementation-family-tree.png" alt="What programming languages are written in: Language Lineage poster" width="800"></a>
Each card is an implementation language. Under it are the languages and tools whose compiler or runtime is written in that language today, using the dataset's compiler written in, runtime written in, rewritten in edges that have no end year. Historical implementations are left out, so Go appears as self-hosted rather than under C, which wrote its compiler until 2015; for those changes over time see how compilers bootstrap. Influence and transpilation edges are not drawn.
A language can appear on several cards when the dataset records parts of its implementation in different languages: Julia appears under C, C++, Self-hosted, and LLVM. Cards with fewer than 3 entries are merged into "Everything else". Every edge links to its source on the relationship pages and in the downloadable dataset.