The family tree of programming languages
Forming a family tree of how programming languages are related is not easy as we can argue for a while over how much they have influenced each other. It would also be impossible for us to draw a tree that includes all of the existing languages as there are so many that fitting them into even a page of this book would be impossible. What we can do, however, is draw a tree that includes languages that are either popular right now or that have influenced these languages in a significant way.
The selection of languages we will use here is based on their popularity—that is, they are the languages that you are most likely to use. To know what languages are the most popular ones today, we can turn to several sources. The question is how to measure how popular a language is, and different sources use different criteria to make this selection. If we browse through several top lists online, we will soon discover that there are some languages...