Ruby débute au Japon son parcours pour l’ISO
Au Japon, un groupe de travail planche sur la rédaction des spécifications officielles du langage Ruby. Un projet de longue haleine ouvert aujourd’hui aux commentaires qui vise avant tout à recevoir le sceau de la normalisation nippone pour entrer sur les marchés publics. Mais qui devrait se terminer par une soumission à l’ISO.
Ruby en route pour l’ISO. L’Information-technology Promotion Agency (IPA), un organisme japonais de promotion de l’IT a rendu public le 1er décembre, le premier jet des spécifications officielles du langage Ruby. Objectif : ouvrir aux commentaires des utilisateurs cette définition technique. Pour au final s’engager dans un long processus de normalisation qui doit se terminer par l’ISO (Organisation internationale de normalisation) et transformer ainsi le langage en un standard international.
Les travaux sur les spécifications de Ruby - qui s’appuie sur la version 1.8.7 de Ruby - ont débuté en octobre 2008 par la création au sein de l’IPA d’un groupe de travail dédié, le “Ruby Standardization Working Group”, chargé de la rédaction de la précieuse documentation. Une initiative qui doit d’abord répondre à une problématique locale : celle qui vise à toucher les marchés publics au Japon. Le gouvernement japonais ne tolère en effet, dans ses administrations, que les outils informatiques ayant été normalisés, constate Laurent Juillard, directeur associé de Nuxos, société spécialisée dans le développement Ruby.
Une fois ces spécifications approuvées dans une version améliorée - notamment grâce aux remarques de la communauté - , le dossier sera ensuite transmis au Japanese Industrial Standards Committee, l’organisme local de normalisation (l’équivalent de l’Afnor en France). Une fois approuvé, il pourra enfin intégrer les processus de l’ISO.
Ruby, s’il gagne progressivement en maturité et en popularité, fait parti des langages qui bénéficient de plusieurs implémentations phares - citons JRuby chez Sun, une implémentation pour la machine virtuelle Java et IronRuby pour .Net ou encore MacRuby -. Toutefois, le langage ne disposait pas de spécifications officielles. Mais - démarche originale - d’un projet de spécifications exécutables (RubySpec) développé par Engine Yard il y a 18 mois “from scratch”. Son principe : permettre, grâce à un éxecutable, de valider la compatibilité de chaque application Ruby avec le coeur de Ruby. Une véritable analyse comportementale du code à travers plus de 33 000 points de contrôle. “L’objectif est de s’assurer que les applications Ruby codées pour exploiter les fonctions clés de Ruby couvertes par les specs fonctionneront de la même façon sur toute implémentation du langage”, explique Engine Yard sur son site.
L’écriture des spécifications officielles est du coup un aboutissement du projet RubySpec, il s’agit finalement de coucher sur le papier ce qui a été réalisé, explique Laurent Juillard, tout en estimant que les spécifications exécutables sont davantage valorisantes.
Toutefois, "cela devrait permettre d’ouvrir des marchés en Europe - souligne-t-il - et de donner de la crédibilité et de la visibilité au langage en France, où pour l’heure il reste caché derrière le framework Rails".
Dans la communauté, les avis sont toutefois partagés, comme en témoignent la longue liste de commentaires sur le site RubyInside.
Sur LeMagIT :
Fabien Potencier, Pdg de Sensio et créateur de Symfony : « en entreprise, Ruby et Python n'existent pas »
Ruby : progression continue, PHP en ligne de mire
En complément
Le site de l’IPA