Categories
Programming

Influences des langages de programmation

Relations between programming languages
Relations between programming languages

J’aime bien ce graphique généré à partir des boites d’informations sur les pages de Wikipédia de différents langages de programmation.

Voici une petite liste des langages avec lesquels je suis le plus à l’aise et dont j’ai eu l’occasion d’utiliser, dans des contextes professionnels (y compris à l’université) ou personnels. Grossièrement sur ce graphe il s’agit de l’ensemble défini par le triangle Lisp – Haskell – Perl (plus OCaml et C, un petit peu plus bas). J’ai cependant encore pas mal de progrès à faire avec Haskell et je voudrai apprendre Lisp. Ce n’est pas si évident car je n’utilise pas ces langages à mon travail. Mais bon, je peux être content de ne pas utiliser PHP et Java (qui a quand même influencé un langage appelé Pizza!).

2 replies on “Influences des langages de programmation”

Hey !

C’est marrant que Standard ML et Ocaml ne soient pas reliés. Et que Coq et OCaml soient si loin l’un de l’autre. C’est toi qui l’a généré ? Quelles sont les critères/règles utilisé(e)s ?

Je propose une «amélioration» avec un graphe orienté: A –> B si A a influencé B. Et il faut faire attention car dans la page wikipedia de B on peut voir qu’il a été influencé par A mais dans la page pour A on ne voit pas qu’il a influencé B (p. ex.: Ocaml et StandardML). Aussi pour la taille des nœuds, ce serait bien si elle était proportionnelle au nombre d’arcs sortants. Comme ça on pourrait distinguer les langages importants par l’influence qu’ils ont eu (et négliger ceux qui pompent 🙂 ).

Non ?

Ce n’est pas moi qui ai réalisé ce graphe, il y a l’adresse sur le fichier png 😉 Et j’ai trouvé ceci via Hacker News. C’est bien expliqué ici.
En fait, il a utilisé les liens “a influencé” et “influencé par”.

Cependant le lien entre ECMAScript et JavaScript est plutôt du type “a été implémenté en”:
http://en.wikipedia.org/wiki/ECMAScript
C’est étrange. Ça doit être une erreur.

Je suis d’accord avec ta proposition d’amélioration, ça serait bien plus clair. En l’état je pensais que par exemple un langage comme le C (en bleu) qui a influencé Python, aurait une liaison bleu avec Python. Mais ça ne peut pas fonctionner comme ça.
Et en effet, on peut avoir A <-> B. Au cours du temps deux langages peuvent s’influencer mutuellement.

T’as seconde idée, concernant la taille des nœuds est aussi une bonne idée.

Ça pourrait être intéressant de se lancer dans ces améliorations. Je ne sais pas si il faudrait aussi utiliser Gephi ou tout simplement Graphviz.
Et aussi quelle source? Éventuellement plus fiable que Wikipédia. S’il en existe une. Ça serait super d’avoir un tel graphe sur Tiobe ou Ohloh.

Comments are closed.