Journal La fourberie des perles

Posté par (page perso) .
16
20
juil.
2010

Nous vivons des temps très excitants.



Les perles sont fourbes, elles ne sont jamais là où nous les
attendons, et pointent les bouts de leur orbe n'importe quand.



Deux perles très rusées sont en passe de venir nous titiller la
concupiscence : Guile 2.0 et Rakudo Star (Perl 6).



Rakudo Star


Rakudo Star (a "usable Perl 6") to be released by July 29
Submitted by pmichaud on Sat, 06/19/2010 - 11:09


Rakudo Star c'est le nom de la première sortie officielle de Rakudo
Perl, une implémentation de Perl 6.



Perl 6 c'est un gros langage. On pourrait presque dire que c'est une
famille de langages à lui tout seul. Il permet la programmation dans
pleins de sous-langages, dont le nouveau moteur d'expressions
rationnelles fait partie.



Deux et trois choses amusantes dans Perl 6 :



Expressions rationnelles : elles deviennent un véritable
sous-langage de Perl 6. Il y a plein de trucs qui ont l'air très
chouette, mais comme je ne connais pas grand chose au domaine, je vais
me contenter d'exprimer mon étonnement ;)



Contextes multiples et invariance du sigil : Enfin, dirons
certains, le sigil est invariant ! Ne vous réjouissez pas trop vite,
il l'est moins par soucis de se conformer aux autres langages que
parce que les contextes sont beaucoup plus abondants qu'en Perl 5 et
auraient rendu la variance du sigil un enfer...



typage : typage dynamique, mais aussi statique.



Macros : type C ( simple substitution textuelle), type LISP (
modification de l'arbre syntaxique ).



OO : L'OO classique et l'OO basée sur les prototypes
sont possible. Les "roles" ( mixins, interfaces, traits dans d'autres
langages ... ).



Pleins d'autres choses : des bidules pour faciliter la programmation
concurrentielle, les jonctions etc.



Guile 2.0




2010-06-01
GNU Guile 1.9.11 (beta) released. This may
be the last release before 2.0 comes out.


Guile 2.0 c'est l'implémentation de Scheme du projet GNU qui avait
pour objectif de devenir le langage «glue» du monde libre et, au
pasage, de remplacer Emacs LISP.



Si le premier est depuis longtemps compromis par les Python, les Perl
et même les Javascript, le second est en passe de devenir une réalité
!



Guile permet depuis la version 1.9.0 de compiler scheme en du bytecode
pour une machine virtuelle dédiée.



Guile supporte déjà ECMAScript mais aussi... Elisp !



Le support de R6RS est quasiment complet.



Au passage, je tiens à signaler que PLT Scheme devient Racket, et
qu'Emacs 24 continue de grandir joyeusement.

(27 commentaires).
  • # Précepte

    Posté par (page perso) . Évalué à 10.

    Il y a un précepte que j'aime à suivre et que Perl 6 devrait adopter. « Quand ça arrive trop tard, c'est trop tard »
    • [^] # Re: Précepte

      Posté par . Évalué à 10.

      ils te répondront, que perl5 fonctionne très bien, et qu'il n'y a pas besoin de se presser.

      "La liberté de tout dire n'a d'ennemis que ceux qui veulent se réserver le droit de tout faire".

      • [^] # Re: Précepte

        Posté par (page perso) . Évalué à -5.

        Ils devraient pas répondre. Quand t'utilise perl tu la fermes bien comme il faut et pis c'est tout.

        A zut on est pas dredi? -> []
      • [^] # Re: Précepte

        Posté par . Évalué à 3.

        "ils te répondront, que perl5 fonctionne très bien, et qu'il n'y a pas besoin de se presser. "

        Dans ce cas, pourquoi vouloir faire une version 6 ? C'est bien qu'il y a des besoins qui ne sont pas couverts par perl5, non ? Et donc on peut discuter du fait qu'il y ait besoin de se presser.

        PS : je ne connais rien en Perl du tout, j'ai peut-être (surement ?) dit une bétise, mais ca me paraissait logique.
        • [^] # Re: Précepte

          Posté par . Évalué à 2.

          Bonne remarque :)

          Disons qu'il ne voit pas un besoin urgent et qu'il préfère peaufiner le truc au mieux.

          D'ailleurs, Perl a changé sa façon de sortir les version des perl5. Ils backportent certaine fonctionnalité, et sortent plus souvent.

          "La liberté de tout dire n'a d'ennemis que ceux qui veulent se réserver le droit de tout faire".

    • [^] # Re: Précepte

      Posté par (page perso) . Évalué à 3.

      Trop tard par rapport à quoi ? Quels sont les critères ? Perl 6 c'était une commande avec des cahiers des charges ?
      • [^] # Re: Précepte

        Posté par . Évalué à 4.

        Faut croire que oui, Perl 6 a un cahier des charges. Autrement, il serait déjà sorti.

        Article Quarante-Deux : Toute personne dépassant un kilomètre de haut doit quitter le Tribunal. -- Le Roi de Cœur

        • [^] # Re: Précepte

          Posté par . Évalué à 1.

          C'est pas une commande. Où tu as vu ça ?

          Les versions de Debian n'ont pas de cahier des charges et pourtant ils sortent pas une version chaque fois qu'un paquet est modifié dans le dépôt main.
  • # Les sigils c'est indubitablement intuitif

    Posté par . Évalué à 6.

    $a # variable de type scalaire
    @a # variable de type tableau
    %a # variable de type hash
    \&a # fonction

    Et encore ,voici les twigils: (apparu dans le bien aimé Perl 6)
    $foo # variable classique sans sigil secondaire
    $^foo # paramètre auto-déclaré
    $*foo # variable globale
    $?foo # indication pour le compilateur
    $=foo # variable pod : pour la documentation
    $ # variable de match utilise dans les regex
    $!foo # attribut privé de l'objet courant
    $.foo # attribut public de l'objet courant...
    # ...accesseur pour du code en dehors de la classe de l'objet

    Source:WIkipédiou

    PS:Ca Parait tout de même sympa pour l'auto-documentation,car il faut garder les sigils tout au long de l'utilisation de la variable.
  • # J'ai rien compris....

    Posté par (page perso) . Évalué à 4.

    Ah si quand même un truc :

    "Tiens il bouge encore ?"


    /me fuit...
  • # Perl 6 et les mini langages

    Posté par (page perso) . Évalué à 3.

    Un article très intéressant sur Perl 6 et les mini langages :

    http://www.modernperlbooks.com/mt/2010/07/eliminating-errors(...)
  • # re

    Posté par (page perso) . Évalué à -3.

    Ca t'exite ?

Envoyer un commentaire

Suivre le flux des commentaires

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