L'histoire des langages de programmation - 3ème partie
Voici enfin le dernier article de notre série consacrée à l'histoire des langages de programmation.
Après avoir présenté les outils de programmation de la fin du 19ème siècle jusqu'aux années 1980, puis ceux des années 1980 à 1990, nous nous intéresserons aujourd'hui à ceux de ce début du 21ème siècle. Nous verrons également ce que l'informatique du futur va changer dans les habitudes de développement logiciel.
Le début du siècle n'a pas été très riche en nouveaux langages mais plusieurs d'entre eux ont acquis une certaine importance. En l'an 2000, Manfred vos Thun conçoit Joy, Walter Bright développe le langage D, et Microsoft dévoile C# avec l'implication de Anders Hejlsberg (photo), créateur de Delphi cinq ans auparavant.
Les inspirations du C# vont du C au C++ ou au Java dont il reprend généralement la syntaxe, mais aussi du Pascal dont il hérite de la surcharge des opérateurs. Outre officiellement avoir été conçu pour exploiter tout le potentiel de la plateforme .Net de Microsoft, C# a également été développé pour s'affranchir de la plateforme Java de Sun, avec qui Microsoft a eu des démêlés à ce sujet.
Un an plus tard, Microsoft publie Visual Basic.Net. Pas un nouveau langage à proprement parler, mais plutôt une évolution, destinée à l'intégration du langage dans la plateforme .Net. La même année, Xerox PARC dévoile AspectJ, basé sur Java, apportant à ce langage la programmation orientée aspect.
C# fera des émules. En 2003, l'université de Wroclaw publie Nermle qui s'inspire tout à la fois du langage de Microsoft, de ML et de MetaHaskell. En 2004, Rodrigo de Oliveira développe Boo qui ajoute une syntaxe inspirée de Python à la compatibilité avec C#. La première version de Mono, implémentation libre du Framework .Net de Microsoft, apparaîtra la même année, conçu par Miguel de Icaza (photo), apportant par là même le C#, devant initialement être multiplateforme, au monde du libre, et notamment Linux.
Microsoft, décidément très productif, dévoilera F# en 2005. Lui aussi inspiré du C#, mais également de OCaml et Haskell, il ne sera proposé au grand public qu'avec la prochaine génération de l'environnement de développement Microsoft Visual Studio 2010. En 2006, Microsoft - encore - dévoile Windows PowerShell, qui n'est pas qu'un shell mais aussi un langage de script destiné à l'administration de machines Windows. Les moins tolérants diront que c'est une pâle copie des shell Linux, les autres y verront une évolution de la console DOS lui apportant une grande puissance.
Le projet GNOME dévoile Vala en 2007, destiné à apporter aux développeurs sous Linux une syntaxe très proche du C#. Sa particularité est de ne pas compiler le code source directement en assembleur mais d'abord en C, et c'est ce code en C qui sera compilé par la suite.
On conclura sur le LOLCODE, développé en 2007 par Adam Lindsay. Langage ésotérique s'il en est, sa syntaxe est celle de l'anglais SMS...
Et demain ?
L'évènement qui risquerait de transformer la façon de programmer serait un changement radical de l'architecture informatique. L'histoire nous a montré qu'un système d'exploitation tel que Linux, écrit principalement en C et en C++, langages vieux de près de vingt ans, a été capable de s'adapter à de très nombreuses architectures différentes. Une logique rassurante nous pousse à penser qu'il en sera de même avec les architectures futures, et notamment l'ordinateur quantique.
Damian Conway (photo) a développé ce que nous pourrions appeler le chaînon manquant entre le x86 et le quantique. Le module Perl Quantum::Superpositions permet de simuler le fonctionnement d'un périphérique de calcul quantique. Aujourd'hui, ce n'est que de la simulation mais ce module devrait permettre à un programme développé de nos jours de fonctionner sans changements sur un ordinateur quantique, le jour où la technique sera viable, ce qui prouve que ce bond en avant en matière d'architecture ne devrait pas être trop douloureux pour les concepteurs d'applications.
Au pire, les premiers temps devraient être transitoires, et l'évolution des langages de programmation sur architecture quantique devrait suivre le même cours que le récapitulatif que je vous ai proposé ces dernières semaines : quelques langages de base très puissants au début, pour se diriger de plus en plus vers des langages de plus haut niveau, plus proches de l'utilisateur, plus simples, mais plus modernes.
Dans tous les cas, le quantique ouvrira la voie à une nouvelle génération d'idées, de concepts, de manifestations de l'imagination des développeurs, et il est indéniable que cette époque sera plus que fructueuse et intéressante, au moins autant que l'a été celle de la perforation des cartes ou de l'assembleur...
L'histoire des langages de programmation - 1ère partie
L'histoire des langages de programmation - 2ème partie
-
Voici la suite de notre article consacré à l'histoire des langages de programmation. Nous allons voir aujourd'hui ce qu'il s'est déroulé entre les années 1980 et les années 1990.
-
A moins de s'être déjà renseigné sur la question, on ne se doute pas nécessairement des origines de la programmation informatique. Cet article a pour but d'établir une chronologie des langages de programmation.



Vos commentaires Page 1 / 2
La plupart des langages cités dans l'article s'affranchissent de l'aspect matériel.
Mais tu te doute bien qu'on ne peut pas citer tout les langages utilisés au monde.
Il est clair que pour le F# le .NET 4.0 sera requis (la cause en ai a la gestion des multicore dans la langage).
Mais Visual Studio 2010 n'a pas a ma connaissance ete annoncé avec le F#.
D'ailleur il me sembler que le F# etait sur le point d'etre abandonné, il n'aurait servit que de recherche pour une evolution de la plateforme .NET
Troisième partie nettement moins interressantes que les deux autres. Tout d'abord parcequ'elle accentue les défauts des précédentes : survol du sujet, aucun réelle description des particularités des langages, encore moins des grandes familles, et des lacunes.
Parmi ces lacunes, l'oubli total des langages VBA intégrés à Office, et donc extrêmement utilisés. Parmi les survols et les erreurs, le contre sens à propos de VB .Net qui n'est absolument pas une évolution de de VB 6 (faut vraiment jamais y avoir touché pour dire ça), mais l'adaptation de la syntaxe de VB6 à une toute nouvelle technologie qui est la plateforme .Net. Tout comme C# reprend la syntaxe de C++ et Java. D'ailleurs cette plateforme .Net n'est absolument pas décrite, alors que c'est elle qui est importante, bien plus que C#, VB .Net ou autres langages de la plateforme. Et c'est d'ailleurs un cas interressant ou les langages s'effacent derrière la technologie employée.
Quant aux suppositions finales, elles n'ont aucun intérêt comme toujours en matière d'informatique.
"Quant aux suppositions finales, elles n'ont aucun intérêt comme toujours en matière d'informatique."
Quiconque a la moindre notion de rédaction française sait qu'une bonne conclusion ne doit pas être un résumé de ce qui a été dit dans le corps du texte mais doit poser des questions, inciter à aller plus loin, avancer des hypothèses, etc.
La conclusion de l'article est de ce point de vue tout à fait correcte, même si tu ne la juge pas « interressante ».
On peut aussi le 'breakpointer' pour debugger le script en 'step by step' avec une vue des objets et de leurs attributs, comme en C++ ou en C#.
Bref rien à voir avec un shell Unix ...
Et qui quiconque a un minimum de connaissance de l'Histoire de l'Informatique sait que spéculer sur les avancées futures et les bouleversements annoncés ne se révèle jamais fondé avec le temps.
Il ne s'agit pas la de rhétorique, mais tout simplement du sujet de l'article. Comme je l'ai précisé, une analyse des vraies évolutions des technologies de développement comme la plateforme .Net ou les techniques de développement web (AJAX) aurait réellement permis de conclure de façon interressante la fin de l'article en mettant l'accent sur les changements dans les pratiques purement techniques autant que dans les intérêts économiques. Penser qu'il suffit de spéculer sur l'avenir pour conclure un tel article est vraiement ne pas faire preuve de beaucoup d'exigence, ou alors se cantonner à une attitude très scolaire.
Mais encore faut-il avoir un regard suffisamment critique pour mesurer ce genre de choses, même si tu juges la fin de cet article "tout à fait correcte"...
http://people.mandriva.com/~prigaux/language-study/diagram.png