Ur/Web, un langage simplifiant la programmation web made in MIT

Un chercheur du MIT a présenté un langage de programmation baptisé Ur/Web qui a pour objectif de simplifier le développement de page Web.

Les chercheurs du MIT redoublent d’effort pour créer des langages de programmation capables de se compléter automatiquement ou de faciliter la vie des développeurs. Parmi eux, nos confrères de Zdnet citent y a Armando Solar-Lezema, professeur agrégé au département génie électrique et informatique de la célèbre université de la banlieue de Boston. Il a mis au point, Sketch, qui a pour particularité de remplir automatiquement des oublis ou des erreurs de code dans un programme. Un autre projet du nom de Stack identifie des morceaux de code écartés par les compilateurs mais qui pourraient s’avérer utiles.

Un autre scientifique du MIT a dévoilé une approche un peu différente. Adam Chlipala, professeur en technologie logicielle, a présenté un langage de programmation nommée Ur/Web. Selon son créateur, il a pour vocation de « rendre les applications web non seulement plus faciles à écrire, mais aussi plus sûres ». Ce langage encapsule au sein d’un même langage les différents éléments d’une page web comme les requêtes base de données (SQL), Javascript et code XML. Il fournit un compilateur pour exécuter le code sur la machine. De même, pour garantir la sécurité, Ur/Web interdit les accès restreints des différents éléments d’une page web. Il cite par exemple d’un code de publicité qui ne pourra pas interféré avec un widget calendrier sur une page web.

Adam Chlipala estime que son langage permet de gommer les faiblesses de nombreux framework de développement web. Pour lui chaque variable et fonction définies par un développeur sont liées à un type particulier de données (comme C++ et Java, mais pas JavaScript) limitant ainsi la possibilité pour un attaquant d’intégrer du code malveillant dans le formulaire d’une page web. Le scientifique reconnaît néanmoins un handicap à son projet, « la courbe d’apprentissage est un peu difficile ». Ce qui est connu comme un langage de programmation fonctionnel qui traite le développement comme une série de fonctions est plus efficient, mais aussi plus difficile à apprendre pour un programmeur habitué aux langages orientés objets.
A lire aussi :

Les langages de programmation à fort potentiel de recrutement
Java, C et Python se disputent la tête des langages de programmation

Crédit Photo@isaak55-Shutterstock