5 ms·
The graph is missing the complete hierarchy of the Wirth languages. A very important part of programming language history. They influenced many languages and of
by _ph_ 6y ago
The graph is missing the complete hierarchy of the Wirth languages. A very important part of programming language history. They influenced many languages and of course are a direct predecessor to Go. While Go has mostly a C-style syntax, in my opinion, it is otherwise closely based on Oberon.
- notacoward 6y agoAlso missing is Ada from that same lineage, the entire category of concatenative languages (with Forth the best known example), COBOL, SNOBOL/Icon, BASIC, APL, PHP, Racket, etc. It's laughably incomplete, not a history at all, and "opinionated" is a severe understatement. Was not at all surprised to see that the author's still a student specializing in Coq and similar things. Experience building actual complex systems whose users aren't computer scientists might have led to a broader perspective and a very different set of opinions.
- ncmncm 6y agoThose other languages are interesting today only insofar as they have affected currently important languages. The exception is COBOL, which is still important in the way FORTRAN and Java are, but similarly will not affect future languages.
- notacoward 6y ago> only insofar as they have affected currently important languages If this is meant to be any kind of history, that would seem to be grounds for inclusion. After all, Bourne Shell gets a spot, even though it's not actually a language and hasn't influenced any other language to any significant degree (unless you consider Tcl and even that's a big stretch). It seems like many things were included merely as excuses to express like or dislike, without any regard for historical importance or relevance. The fact that it favors C++ over alternatives might please some, but doesn't make it a good article.
- ncmncm 6y agoYou will find an increasing incidence of pipe forms ("X | Y | Z" meaning something akin to "Z(Y(X))", but different) in current languages. C++ and Rust both use it, and Haskell has a variation.
- notacoward 6y agoSo it contributed one character? The same concept has been in many functional and concatenative languages since even before sh, and those are more likely to have inspired contemporary languages. The influence of absent Simula or Algol is multiple orders of magnitude greater than sh, so the point about the arbitrary standard for inclusion still stands.
- ncmncm 6y agoBourne shell is most practicing programmers' first exposure to language features supporting safe concurrency without locks or shared storage. Those features are still finding their way into C++. And no, it is not the same concept. When was the last time you had any contact with a running Algol or Simula program? I use sh -- bash, really -- every day.
- notacoward 6y ago> Those features are still finding their way into C++. Not the only area in which C++ is 30 years (and counting) behind state of the art. > When was the last time The OP is supposedly about history, thus current usage is irrelevant. There's no longer a Mongol Empire either, but its existence is still historically important and only the worst kind of dilettante would try to write a history of the world without mentioning it.
- ncmncm 6y agoYet, other languages are, also, only just getting similar features. The author seems to prefer to mention languages that are still taught and used, and to neglect those that are not. It being an "opinionated" history, I can only find fault where he breaks his own rules. Maybe he should mention Korn shell, for example, which became Posix shell and bash. But only Bourne shell features affected modern languages.
- hdjdbtbgwjsn 6y agoPHP is far from insignificant in 2020.