
Diagram and History of Programming Languages (2006) - ZeljkoS
http://rigaux.org/language-study/diagram.html
======
dahfizz
Can anyone justify the connection between Java and JavaScript? They seem like
very different languages to me.

~~~
macintux
IIRC, the syntax for JS was redesigned hurriedly to look like Java because at
the time Java was hyped as the one true language for everything web, including
front-end apps (applets). Definitely the name was chosen for that reason.

~~~
chvid
If you add static types to js and create typescript you all of a sudden have
something that looks a lot like c# and java ... don’t you think?

~~~
ylesaout
And if you add Lambdas to Java you all of a sudden have something that looks a
lot like JavaScript... Don't you think?

~~~
chvid
To me the big different between js and java is the static type system - ignore
that the connection between the two is obvious.

------
celeritascelery
What is the criteria to consider a language a derivative of some other
language? Programming languages seem like they borrow so much from one
another.

~~~
hathawsh
That's my question also. If I were to create a programming language today, it
would be influenced by everything I've ever worked on, not just a few specific
languages. I wouldn't be able to say it was derived from any particular
languages.

------
voidhorse
Cool stuff. I’m fascinated by programming languages and their histories, and
it’s great to have a visualization. It’d be extra sweet to have more detailed
diagrams that elaborated some of the relationships (e.g. something like noting
the Rust connection to Haskell relates to its adoption of a similar typing
philosophy or whatever—providing some annotations on the nature of influence
would be great). This could get very messy very quickly in a single graphviz
graph, however, so you might have to make separate graphs for the ancestral
inheritance of each concept, e.g. a graph the represents the mutual influences
languages have had on each other in terms of their approaches to type systems,
another for their influence on control structures/primitives, and so forth.

~~~
gpsx
I second this. It would also be nice to specify what is new about a given
language. As the parent comment says, this type of thing would be difficult to
capture, but it would be very interesting if we could. It would be sort of a
Darwin "tree of life" for the evolution of programming languages.

[https://en.wikipedia.org/wiki/Tree_of_life_(biology)](https://en.wikipedia.org/wiki/Tree_of_life_\(biology\))

------
piercebot
Surprised that Clojure didn't make even the big list.

~~~
nepeckman
Interesting seeing which niche languages made the list. It has F#, D, and
Squeak, but not Clojure, Nim, Crystal, or Elixir (that I could find).

EDIT: missed the (2006), yeah all the ones I mentioned are too young.

~~~
piercebot
I don't think 2006 is valid, because the charts themselves go to 2016

------
fatiherikli
Here's a network of programming languages and their relationships between
[https://fatiherikli.github.io/programming-language-
network/](https://fatiherikli.github.io/programming-language-network/)

------
jlcx
People have spent some time entering programming languages, their
publication/release dates, and their relationships (e.g. "influenced by",
"based on") in Wikipedia and Wikidata. I like the latter, because it makes it
easier to keep track of specific claims and their references. If people did
more work on that, those relationships could be used to generate larger
diagrams/histories like this and keep them up to date.

------
Rotten194
Javascript should really also be connected to Scheme. Sure, the "JS = Scheme"
meme is not true, but Eich was certainly inspired _by_ Scheme.

~~~
ylesaout
For sure! Without Scheme influence they probably won't have been closures in
JS.

------
ncmncm
How strange to learn that C++ has entirely stagnated since 1998.

I guess C++11 and C++14 were just final gasps of a dying language, nowhere
near the importance of Python or Java point releases.

But how can we account for ballooning attendance at ISO C++ Standard meetings
(lately approaching 200) and industry conferences?

~~~
bsder
If you sit in the niche that needs C++, cool for you.

For everybody else there _IS_ a better language. There is zero reason to
saddle yourself with the baggage of C++ in this day and age if you don't have
to.

COBOL still is running a ton of stuff and still has conferences. That doesn't
mean we should build new applications in it.

------
JadeNB
I enjoy Prolog just sitting off by itself in the simplified picture.

------
gmueckl
I liked the timeline based visualization in the Computer History Museum. It
shows both the ancestry and age of each language quite clearly.

------
platz
Swift is derived from Rust?

~~~
kod
[https://github.com/apple/swift/blob/master/docs/OwnershipMan...](https://github.com/apple/swift/blob/master/docs/OwnershipManifesto.md)

~~~
platz
I see rust mentioned and dismissed as too complex.. it talks about "shared
values" vaguely. I would not call Swift derived from rust

