Poznaj drzewo genealogiczne języków programowania

Poznaj drzewo genealogiczne języków programowania
Stworzenie drzewa genealogicznego powiązań języków programowania nie jest łatwe, ponieważ możemy przez chwilę spierać się o to, jak bardzo na siebie wpłynęły.
Nie moglibyśmy również narysować drzewa zawierającego wszystkie istniejące języki, ponieważ jest ich tak wiele, że umieszczenie ich nawet na jednej stronie jakiejkolwiek książki byłoby niemożliwe.
Możemy jednak narysować drzewo zawierające języki, które są obecnie popularne lub które wywarły na te języki znaczący wpływ.
Wybór języków, których tutaj będziemy używać, zależy od ich popularności – to znaczy, są to języki, których najprawdopodobniej będziesz używać.
Aby dowiedzieć się, jakie języki są dziś najpopularniejsze, możemy skorzystać z kilku źródeł.
Pytanie brzmi, jak zmierzyć popularność języka, a różne źródła używają różnych kryteriów, aby dokonać tego wyboru.
Jeśli przejrzymy kilka najpopularniejszych list w Internecie, wkrótce odkryjemy, że istnieją języki, które znajdują się na wszystkich tych listach.
Zacznijmy, więc od nich i zobaczmy, jak możemy z nich zbudować drzewo.
Języki, które zostaną dołączone, w niekreślonej kolejności, to JavaScript, Java, Python, PHP, C, C++, C # i Ruby.
Jeśli zaczniemy od jednego języka – na przykład języka C – i przyjrzymy się, na jakie języki ma on wpływ, znajdziemy język asemblera,
Fortran i ALGOL (jeśli tylko skupimy się na tych, o których wspomnieliśmy wcześniej).
Możemy teraz zacząć rysować to drzewo.
Jeśli następnie zrobimy to samo dla innych języków i zobaczymy, które z nich miały na nie wpływ, a na które wpłynęły, otrzymamy drzewo, które wygląda mniej więcej tak:

r_209_12_5
Moglibyśmy prowadzić długie dyskusje na temat tego, czy jest to dokładne przedstawienie, ale daje nam to ogólne pojęcie o tym, jak języki wzajemnie się inspirują.
Spośród języków, o których mówiliśmy, tylko COBOL nie może być bezpośrednio powiązany z żadnym z tych języków.
Nie oznacza to, że COBOL nie jest niezbędny, ale na języki, które znalazły się w tym drzewie, COBOL nie miał żadnego znaczącego wpływu.
Inną rzeczą, na którą należy zwrócić uwagę w przypadku tego diagramu, jest nadreprezentacja języków, których wspólnym przodkiem jest ALGOL.
Powodem tego jest fakt, że wśród najpopularniejszych obecnie języków wszystkie pochodzą z grupy często określanej, jako rodzina języków ALGOL.
Pozwoliłem sobie również na pominięcie niektórych języków pośrednich z niektórych z tych relacji, aby zmniejszyć rozmiar drzewa.
To, czego nie widzimy w tym drzewie genealogicznym, to wyrastający język, który jest całkowicie niezwiązany z żadnym istniejącym językiem.
Oznacza to, że nowe języki są tworzone, jako reakcja na istniejący język.
Tworząc nowy język, bierzemy części, które nam się podobają, z jednego lub kilku języków i zmieniamy części, których nie lubimy.
Powodem, dla którego to drzewo może być interesujące, jest to, że jeśli uczę się jednego języka programowania, to nauka języka pokrewnego jest znacznie łatwiejsza niż nauka języka znajdującego się dalej w drzewie.
Autor: Mark Davis

Komentarze z Facebooka

Komentarze obecnie - OFF.