PARROT 1.0 !


Plus ou moins annoncé le premier avril 2001 (à l'origine, il s'agissait d'une blague !), le projet d'une machine virtuelle commune pour supporter plusieurs langages dynamiques est parvenu le 17 mars dernier à la version 1.0.
Parrot est désormais considérée comme utilisable, et supporte déjà de nombreux langages.

Parrot, c'est quoi ?


Une machine virtuelle pour les langages dynamiques


Si vous utilisez un langage interprété, comme par exemple PHP, Python, Perl ou même Java, vous savez que, pour tourner, votre programme requiert ce que l'on appelle une machine virtuelle, également appelée interpréteur. C'est un programme pré-installé qui traduira à l'exécution votre code de façon à ce qu'il soit compréhensible par votre ordinateur. C'est un concept différent de celui de compilateur, qui est lui un programme chargé de traduire votre code en exécutable une bonne fois pour toute sans intermédiaire quelconque à l'exécution.

Naturellement, le fait d'utiliser un langage interprété peut être pénalisant pour la diffusion de vos applications. Par exemple, développer des applications en Python est relativement simple, mais demandera à ce que chacun de vos utilisateurs installe l'interpréteur python. De même pour Perl, Ruby, TCL, etc. Même s'il est possible d'installer tous ces interpréteurs en même temps que votre logiciel, cela représente une charge pour l'utilisateur. De plus, toutes les bibliothèques (du code déjà écrit, prêt à être réutilisé) développées pour un de ces langages sont incompatibles avec les autres. Tout se passe comme si ces programmes ne parlaient pas la même langue.

Développer une machine virtuelle visant à la fois la portabilité, la légèreté et un support facilité de nouveaux langages semblait donc être une bonne idée. Il aurait bien sûr été possible d'utiliser une machine pré-existante, par exemple la JVM, qui supporte déjà le langage Java. Mais celle-ci supporte mal les langages dynamiques que sont par exemple Python et Perl. Cette catégorie de langages se distingue des langages dits statiques (que sont par exemple C ou OCaml) en permettant au programmeur de modifier durant l'exécution des caractéristiques du langage ou des objets que les langages statiques ne permettent de modifier qu'avant la compilation. Par exemple, le type des variables, ou la syntaxe du langage. Le but est d'obtenir une plus grande souplesse.

Une blague !


Le fait que Parrot soit annoncée un premier avril n'est pas un hasard : c'était à l'origine une plaisanterie venant de développeurs Perl et Python ! Ceux-ci prétendaient que Larry Wall et Guido Van Rossum, les créateurs respectifs de ces deux langages, étaient en train de travailler pour créer Parrot (Perroquet en anglais), un langage qui ferait la synthèse des deux autres. Si la farce n'a pas fait long feu, le nom a été repris plus tard par un projet au but similaire, celui qui nous occupe ici. C'est également de là que vient le slogan de Parrot : « Parrot speaks your language », qui signifie en français « Parrot parle votre langue ».

La version 1.0


Parrot 1.0, surnommé "Haru Tatsu", est donc sortie le mardi 17 mars, au terme de près de 8 ans d'efforts. Dirigé par Allison Randal, le cycle de développement est rapide depuis 2007 : tous les troisièmes jeudi de chaque mois, une nouvelle version sort. Cette version marque une étape importante pour le logiciel : il est en effet considéré production ready, ou prêt à être utilisé pour de vrai. Mais l'aventure n'est pas finie. Les développeurs comptent en effet continuer au rythme d'une sortie par mois, et ils ont déjà prévu d'autres grandes étapes, comme la version 2.0. On ne peut que leur souhaiter bonne chance.
Le site officiel de Parrot

Comments

Popular posts from this blog

Top 20 iPhone Productivity Apps for Organized and Lazy

Get Your Freebies From Sites Like PZs Freebies