Comment sont créés les langages de programmation

La construction des langages de Java à C#, ainsi que les nouveaux langages suit toujours le même processus. Mais pas forcément le meilleur qui soit.

La première chose a faire est de définir un bon nom. Rappelez vous cette citation de Donald Knuth, auteur de L'Art de programmer un ordinateur:

La chose la plus importante dans un langage de programmation est le nom. Un langage n'aura pas de succès sans un bon nom. J'ai récemment trouvé un très bon nom et maintenant je recherche un langage qui pourrait lui convenir.

Un fois que vous avez le nom ;) une procédure stricte est suivie pour définir un nouveau langage, toujours...

Considérez l'organigramme ci-dessous...

nouveau langage de programmation

L'étude ergonomique consisterait à recherche comment minimiser les risques d'erreurs. Aux utilisateurs on demanderait ce qu'ils attendent d'un nouveau langage et ce qu'ils aimeraient voir changer.

Comment cela se passe en fait:

conception d'un langage de programmation conservateur

Savez vous que les concepteurs de Go pensaient que le langage serait utilisé comme un remplaçant de C++ et ont donc choisi d'utiliser la syntaxe à laquelle les programmeurs C++ sont habitués (sans leur demander si cela leur convenait). Il s'est avéré que Go est devenu principalement le remplaçant de Python et donc les programmeurs Python doivent utiliser la syntaxe familière aux programmeurs C++. (Réf. Rob Pike). Cela montre les limites de cette approche.

La syntaxe des langages est désespéremment toujours la même avec ces symboles cabalistiques qui rendent la lecture difficile et les erreurs faciles. Des points virgules à la fin des instructions par exemple est totalement inutile mais requis par le langage.

Pourquoi cette syntaxe? Elle a été conçue avec le langage C pour économiser les ressources en mémoire et réduire le temps de traitement à l'époque des premiers microprocesseurs. Donc les nouveaux langages sont conçus pour les ordinateurs des années 70, ce qui paraît stupide, mais ne l'est pas plus que le clavier Azerty où les touches sont disposées pour ralentir la frappe afin d'épargner les machines à écrire des années 50.

Les langages JavaScript et Go permettent au moins de supprimer le point-virgule. Et Julia supprime toutes ces antiquités. Il ne faut pas totalement désespérer...

Deuxième partie: Création des langages : déclaration de variable.

Documents