Journal Parrot avance

Posté par  (site web personnel) .
Étiquettes : aucune
0
21
mar.
2007
Avec le sortie hier de la version 0.4.10, le développement de Parrot, la VM communautaire, suit son rythme.

Pas de révolution pour cette version qui apporte son lot de nouveautés (je ne détaille pas le changelog, n'étant pas en mesure de tout expliquer).

Pour mémoire Parrot est une machine virtuelle originale qui sert de fondement à l'interpréteur Perl6, mais qui est aussi capable de se débrouiller avec d'autres langages comme lua, ruby, python, tcl ...

Basée sur des choix techniques audacieux (registres, concepts venus du Lisp), elle reprends avec bonheur le principe de la compilation "juste au bon moment" (JIT) qui à entre autre permis à des langages comme java d'offrir des performances honorables par rapport aux langage compilés nativement.



Parrot fait avancer Perl de manière certaine. Gageons qu'il en sera de même pour d'autres langages ce qui permettrait à terme d'avoir la possibilité d'utiliser une seule et unique VM pour un ensemble de langages, permettant par la même des optimisations plus profondes (on pensera évidement à l'embarqué). On imagine également les possibilités offertes pour interfacer différents modules écrits en différent langages.

Liens
_ Le site : http://www.parrotcode.org/
_ L'annonce : http://www.parrotcode.org/news/2007/Parrot-0.4.10.html
_ Les langages supprotés : http://www.parrotcode.org/languages/
_ Sur wikipedia : http://fr.wikipedia.org/wiki/Parrot et http://fr.wikipedia.org/wiki/Perl_6
  • # Commentaire supprimé

    Posté par  . Évalué à 1.

    Ce commentaire a été supprimé par l’équipe de modération.

    • [^] # Re: JIT ?

      Posté par  (site web personnel) . Évalué à 1.

      J'avais hésité. En fait il faudrait rendre l'idée de tempo.

      "Dans le mouveu"

      =========>
    • [^] # Re: JIT ?

      Posté par  . Évalué à 2.

      "compilation synchrone" ?

      La gent féminine, pas la "gente", pas de "e" ! La gent féminine ! Et ça se prononce comme "gens". Pas "jante".

  • # Autres machines virtuelles

    Posté par  (site web personnel) . Évalué à 4.

    « ce qui permettrait à terme d'avoir la possibilité d'utiliser une seule et unique VM pour un ensemble de langages, permettant par la même des optimisations plus profondes » : cette description me fait penser à Mono voir aussi à LLVM :-) Mono supporte les langages C#, Java, JavaScript, Python et VisualBasic.NET. Il a un compilateur JIT qui a l'air bien costaux. Je ne sais pas quels langages tournent dans LLVM. J'ai trouvé C, Objective C, C++ et Python, mais il doit en avoir d'autres.

    J'avais testé Pirates (Python pour Parrot), mais c'était vraiment pas avancé du tout (genre on pouvait à peine faire 1+1).
    • [^] # Re: Autres machines virtuelles

      Posté par  (site web personnel) . Évalué à 4.

      >J'avais testé Pirates (Python pour Parrot), mais c'était vraiment pas avancé du tout (genre on pouvait à peine faire 1+1).

      Il semble que ruby, lua et TCL soient bien plus avancés (pas testé)

      >cette description me fait penser à Mono

      Bien sur d'ailleurs Mono est posterieur à Parrot.
      L'idée principale est d'avoir une VM appropriée à des langages qui ne sont pas fortement typés.

      Je crois aussi, qu'il y a des possibilités au niveau des grammaires et autres arbres lexicaux que les autres VM n'ont pas (à préciser).

      De plus, tout implémentation, aussi libre soit elle de java ou .NET est fortement contrainte par une implémentation de réference. Ce n'est pas le cas de Parrot ce qui lui permet de s'engager dans des voies nouvelles.
    • [^] # Re: Autres machines virtuelles

      Posté par  . Évalué à 2.

      Je ne sais pas quels langages tournent dans LLVM. J'ai trouvé C, Objective C, C++ et Python, mais il doit en avoir d'autres.


      Certains envisagent comme projet SoC de porter le frontend Fortran de GCC 4.2 vers LLVM. Sinon il y a aussi HLVM[0] qui est un peu au point mort mais d'après ce qui se murmure sur llvm-dev risque de repartir de bon train.

      [0] : http://hlvm.org/
  • # Q? Cible pour pypy

    Posté par  (site web personnel) . Évalué à 2.

    Est-ce que Parrot est dans les VM cibles de Pypy ?

    Python 3 - Apprendre à programmer dans l'écosystème Python → https://www.dunod.com/EAN/9782100809141

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.