L'écriture des programmes informatiques requiert en général la connaissance de langages spécialisés comme C++, Fortran ou de l'Assembleur. Dans différents documents édités par le Laboratoire d'intelligence artificielle et de la science informatique (CSAIL) du MIT, les scientifiques ont cherché un moyen d'écrire des programmes en langage naturel, c'est-à-dire celui que nous utilisons quotidiennement pour parler et écrire.
Pour démontrer cela, les scientifiques ont créé un système pour apprendre à un ordinateur comment convertir des éléments de langage naturel en expressions régulières, via un ordre ou une séquence de chaînes de données (lettres, variables, etc). L'objectif est d'éviter au système de se tromper sur certaines expressions comme « mangez grand-père » à ne pas confondre avec « manger grand-père ». Les chercheurs ont donc adapté les descriptions du texte à différents formats de fichiers correspondant à des modes de programmation particuliers. Par exemple, pour la description « mot de trois lettres commençant par X », le système le convertit en expression régulière « \bX[A-Za-z]{2}\b ». A première vue, cela ne ressemble pas à grand-chose, mais pour les informaticiens cette solution génère des programmes d'analyses d'entrées qui aident les logiciels à comprendre le sens exact d'une phrase ou d'une expression. Ainsi « \bX[A-Za-z]{2}\b » est la définition exacte en informatique d' « un mot de trois lettres commençant par X » et il retournera ce résultat lors de son exécution.
Le système est capable d'interpréter des descriptions beaucoup plus longues et complexes avant de les convertir. Malgré tout, la programmation en langage naturel en est à ses débuts et reste encore limitée. Il faudra encore du temps pour que les non-développeurs puissent devenir des codeurs experts.
La programmation en langage naturel s'améliore
9
Réactions
Les développeurs passent souvent des années dans l'apprentissage de la programmation. Aujourd'hui, des chercheurs du MIT annoncent avoir mis au point un moyen qui donne à la personne la plus inexpérimentée la possibilité de développer du code.
Newsletter LMI
Recevez notre newsletter comme plus de 50000 abonnés
Oui, au fur et à mesure le langage naturel évolue devient plus souple et plus puissant parce qu'il intègre peu à peu de nouvelles capacités. On peut imaginer que LES langages informatiques évoluent et convergent éventuellement vers un langage unique plus maniable, rapide, concis, comprenant des "vocabulaires techniques" divers, intégrant des savoir faire complexes...
Signaler un abusOn en revient toujours au même, le langage "contient" la connaissance, l'ignorant ne sait pas ce qu'il dit.
Une chose propre à l'informatique c'est que la langue de bois, la démagogie et l'à peu près n'ont aucune chance de produire un résultat utile. Quand bien même ce serait possible on y perdrait ce qui fait tout l'intérêt de la machine.
Sauf à vouloir d'un PC qui fait "Bof !" et qui nous zappe.
Visiteur2447 : Je m'appuie sur les propos de 2442 et 2446 , 2488 pour dire. Concevoir, penser, organiser, etc... font partie de l'intelligence. C'est pour ça qu'on parle d'intelligence artificielle pour simuler le même comportement.Ces comportements sont des tâches répétitives et parfois identiques d'un projet logiciel à un autre. Une automatisation de ces tâches va contribuer à une amélioration des conditions des développeurs
Signaler un abusTout à fait d'accord avec 2442 et 2446, j'ajouterais que l'apprentissage d'un langage (naturel ou informatique) et son utilisation rigoureuse représente une part prépondérante de l'apprentissage proprement dit. En d'autres termes si on n'apprend pas à parler on n'apprend pas à penser.
Signaler un abusQue les machines deviennent d'un usage plus simples et les langages plus clairs et plus puissants, ne peut en aucune façon oblitérer la nécessité, pour celui qui les utilise (développeur ou utilisateur) d'avoir une claire conception et compréhension de ce qu'il veut faire et de comment il va le faire.
L'informatique n'est pas une baguette magique. Les seuls qui peuvent croire ça ne font que payer pour que d'autres fassent le boulot avant eux.
Je trouve génial cette idée,car j'ai déjà essayé de me pencher sur le sujet. Les expressions de régulières permettront de comprendre les commandes. Mais parfois une commande est prolongée par une action. Comment formaliser une action à faire par l'ordinateur ? Et je suis du même avis qu'il faudra toujours apprendre à l'ordinateur, mais cette fois-ci en langage naturel
Signaler un abusComme le dit Visiteur2442, l'apprentissage de la syntaxe et du lexique d'un langage de programmation ne constitue pas 10% de la valeur ajoutée d'un développeur.
Signaler un abusConcevoir des algorithmes performants, organiser efficacement les données, penser l'ergonomie et la robustesse constituent les 90% restant.
Pouvoir exprimer des requêtes (type SQL) en langage naturel peut en revanche être intéressant pour ouvrir la consultation des SGBD aux non-informaticiens.
A l'instar de la démocratisation des langages de prog, je trouve très utile, et particulièrement important, qu'une initiative de traduction de notre monde moderne, régit par du code, permette de promouvoir le développement à une plus grande partie du peuple.
Signaler un abusIl ne me semble pas qu'avoir remplacé le travail des humains par celui des machines dans les champs soit une mauvaise chose.
L'évolution permet à tous de comprendre le monde dans lequel nous vivons.
Il nous faut suivre l'évolution de cette "nouvelle techno"; mais il est sur, que cela ne peut qu'apporté une modernisation de l'informatique, qui, bien que tout est fait contre, s'ouvre de plus en plus au grand public; et cela est particulièrement bon.
Enjoy the MIT!
ils sont marrants à vouloir "coder en parlant", mais ce n'est pas l'orthographe et la grammaire des langages qui sont la réelle difficulté de notre boulot. Ce sont les limites de chaque langage et les restrictions que ça induit dans les questions d’algorithmie.
Signaler un abusOr concevoir un algorithme ou mettre en oeuvre un design pattern c'est quelque chose qui devra toujours s'apprendre.
On veut nous tuer notre boulot quoi...
Signaler un abusBonjour,
Signaler un abusSi le langage naturel des chercheurs du MIT est l'anglais, j'ai peur qu'ils nous ré-inventent le COBOL.
Cordialement
BugMaker