IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage Perl Discussion :

Perl 5.24.0 maintenant disponible


Sujet :

Langage Perl

  1. #1
    Responsable Perl et Outils

    Avatar de djibril
    Homme Profil pro
    Inscrit en
    Avril 2004
    Messages
    19 820
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 19 820
    Points : 498 771
    Points
    498 771
    Par défaut Perl 5.24.0 maintenant disponible
    Bonjour,

    La version stable de Perl 5.24.0 est maintenant disponible :
    • 1.0 - 1987 ;
    • 2.0 - 1989 ;
    • 3.0.4.1 - Novembre 1989 ;
    • 3.0.8.1 - janvier 1990 ;
    • 4.0 - décembre 1991 ;
    • 5.000 - 17 Octobre 1994 ;
    • 5.001 - 13 Mars 1995 ;
    • 5.002 - 29 février 1996 ;
    • 5.002_1 - 25 Mars 1996 ;
    • 5.003 - 25 Juin 1996 ;
    • 5.003_1 - 31 Juillet 1996 ;
    • 5.004 - 15 mai 1997 ;
    • 5.005 - 22 juillet 1998 ;
    • 5.1 ;
    • 5.6 - 22 mars 2002 ;
    • 5.8.0 - Juillet 2002
    • 5.8.8 le 31 janvier 2006
    • 5.10.0 le 18 décembre 2007, 20e anniversaire de Perl 1.000
    • 5.8.9 le 14 décembre 2008
    • 5.10.1 le 23 août 2009
    • 5.12.0 le 12 avril 2010
    • 5.12.1 le 16 mai 2010
    • 5.14 - 14 Mai 2011 ;
    • 5.16 - 20 Mai 2012 ;
    • 5.18 - 18 Mai 2013 ;
    • 5.20 - 27 Mai 2014 ;
    • 5.22.0 - 1 juin 2015 ;
    • 5.24 - 10 Mai 2016.



    Sa mise en place a nécessité onze mois de développement depuis Perl 5.22.0. Cette mise à jour contient 360000 lignes de codes modifiées à travers 1800 fichiers pour un travail d'équipe : 77 auteurs.

    Pour en savoir plus sur les changements (suppressions, rajouts, modifications), c'est ici.

    N'hésitez pas à tester les nouveautés et nous faire part de vos retours.

  2. #2
    Responsable Perl et Outils

    Avatar de djibril
    Homme Profil pro
    Inscrit en
    Avril 2004
    Messages
    19 820
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 19 820
    Points : 498 771
    Points
    498 771
    Par défaut
    Bonsoir,

    Strawberry Perl est disponible en version 5.24.0.1 ce qui vous permet de tester cette nouvelle version sous Windows sur des architectures 32 bits ou 64 bits en mode portable ou non.

    Merci de nous faire vos retours.

  3. #3
    Rédacteur/Modérateur

    Avatar de Lolo78
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Mai 2012
    Messages
    3 612
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2012
    Messages : 3 612
    Points : 12 256
    Points
    12 256
    Billets dans le blog
    1
    Par défaut
    Bonsoir,

    voici un bref résumé des principales nouveautés:

    • La fonctionnalité de déférencement postfixé est maintenant stable (n'est plus expérimentale);
    • Support à la version Unicode 8.0;
    • La fonctionnalité d'autodéréférencement (autoderef) a été supprimée.
    • Le $_ lexical a disparu.


    La fonctionnalité de déréférencement postfixée a été introduite à titre expérimental en version 5.20 (en 2014). Elle permet par exemple d'accéder au contenu d'un tableau depuis une référence sur ce tableau avec la syntaxe suivante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    my @elements = $array_ref->@*;
    ou:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    for my $item ($array_ref->@*) {
        # ...
    }
    Dans les deux cas ci-dessus, la notation $array_ref->@* est essentiellement équivalente à la notation circonfixée @{$array_ref}. Dans certains cas, cependant, la notation circonfixée est peu pratique, voire inutilisable. Par exemple, si une fonction renvoie une référence vers un tableau, il est possible d'accéder aux éléments de la façon suivante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    sub liste_saisons {
        return [ qw /hiver printemps été automne/ ]; # renvoie une référence
    }
    for my $saison (liste_saisons()->@*) {
        # ...
    }
    L'utilisation de cette fonctionnalité exige l'emploi du pragma:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    use feature qw {postderef};
    De plus, la fonctionnalité étant jusqu'à présent expérimentale, elle déclenchait un warning avertissant de la nature expérimentale de la syntaxe. Pour empêcher ce warning intempestif, il fallait ajouter le pragma suivant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    no warnings qw{experimental::postderef};
    Cette fonctionnalité n'étant plus expérimentale, ce dernier pragma n'est plus nécessaire (mais ne gêne pas pour autant).

    La version Unicode 8.0 est sortie en 2015. Elle ajoute plus de 7000 nouveaux caractères au standard Unicode. Pour plus d'information, voir: http://www.unicode.org/versions/Unicode8.0.0/. Perl est depuis longtemps en avance sur la plupart des autres langages de programmation en ce qui concerne la gestion de l'Unicode. La nouvelle version de Perl se conforme à la dernière version du standard Unicode.

    La fonctionnalité d'autodérérérencement avait été introduite en Perl 5.14. Elle permettait d'utiliser certaines fonctions de tableaux ou de hachages avec des références sur des tableaux ou des hachages (donc sans procéder à un déréférencement explicite). Par exemple, la fonction keys:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    my $h_ref = { hiver => 1, printemps => 2, été  => 3, automne => 4};
    say  $_ for keys $h_ref;
    Ce qui imprime:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    printemps
    été
    hiver
    automne
    Cette fonctionnalité à première vue assez pratique entraînait cependant des comportements incohérents ou déroutants dans certains cas. Elle avait donc été rétrogradée au statut "déprécié" en version 5.20 (en général, une fonctionnalité dépréciée est conservée au moins deux versions de Perl avant d'être complètement supprimée), en même temps qu'était introduite la fonctionnalité de déréférencement postfixée expliquée ci-dessus et introduite notamment pour la remplacer. Maintenant que cette dernière fonctionnalité est déclarée stable, il est plus aisé de supprimer l'autodéférencement.

    En Perl 5.24, on écrirait maintenant comme suit le code ci-dessus (non testé):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    my $h_ref = { hiver => 1, printemps => 2, été  => 3, automne => 4};
    say  $_ for keys $h_ref->%*;    # ou, comme depuis très longtemps: ... keys %{$h_ref};
    Une autre fonctionnalité dépréciée depuis un certain temps et maintenant supprimée est le $_ lexical. Elle entraînait parfois des comportements incohérents (confusion entre le $_ global de paquetage et le $_ lexical). On ne peut désormais plus écrire:

  4. #4
    Responsable Perl et Outils

    Avatar de djibril
    Homme Profil pro
    Inscrit en
    Avril 2004
    Messages
    19 820
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 19 820
    Points : 498 771
    Points
    498 771
    Par défaut
    Merci lolo78 pour toutes ces précisions très claires !

Discussions similaires

  1. Réponses: 0
    Dernier message: 26/09/2009, 13h36
  2. La phase de beta-test du SDK ATI Stream v2.0 d'AMD est maintenant disponible
    Par raptor70 dans le forum Développement 2D, 3D et Jeux
    Réponses: 0
    Dernier message: 25/09/2009, 00h34
  3. Réponses: 0
    Dernier message: 25/09/2009, 00h34
  4. Réponses: 5
    Dernier message: 07/09/2009, 23h40
  5. Réponses: 0
    Dernier message: 07/02/2009, 16h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo