Greboca  

DLFP - Dépêches  -  Perl 5.38.0 est sorti

 -  18 septembre - 

Perl est un langage généraliste créé en 1987 par Larry Wall. Il est distribué sous une double licence : Artistic Licence et GPL v1+. La plupart des modules du CPAN, dépôt de référence pour des modules tiers, suivent également ce même traitement. Perl est inclus dans la quasi-totalité des distributions GNU/Linux.

La toute dernière version de Perl, la 5.38.0, est sortie le 3 juillet 2023. Vous la retrouverez bientôt dans votre distribution préférée.

Tout d’abord un petit lien vers la dépêche de l’année dernière sur la sortie de Perl 5.36.0 ainsi que vers les dépêches annonçant les sorties de Perl 5.32.0 et 5.30.0.


Perl (wikipedia)
Annonce de Perl 5.38.0
Changelog Perl 5.38.0
TODO Changelog commenté
Site officiel Perl


Perl est un langage généraliste créé en 1987 par Larry Wall. Il est distribué sous une double licence : Artistic Licence et GPL v1+. La plupart des modules du CPAN, dépôt de référence pour des modules tiers, suivent également ce même traitement. Perl est inclus dans la quasi-totalité des distributions GNU/Linux.

Améliorations de base

Nouvelle fonctionnalité de classe

Depuis quelque temps, Curtis 'Ovid' Poe propose d’intégrer une couche orienté-objet dans l’interpréteur Perl lui-même. Si Perl a plusieurs (dizaines de) modules qui permettent d’utiliser de l’orienté-objet qu’on trouve facilement sur CPAN, ceux-ci sont bridés par le fait qu’ils ne peuvent pas modifier la syntaxe du langage. Ajoutons qu’il n’est pas toujours facile de choisir parmi les différentes solutions proposées… Il a donc proposé un nouveau concept, Corinna, qui sera intégré dans l’interpréteur Perl en plusieurs étapes, la première ayant été intégrée pendant le cycle de développement de Perl 5.38.

Les classes

Ainsi, une nouvelle syntaxe est désormais disponible pour définir des classes d’objets, où les données par instance sont stockées dans des variables « champ » qui se comportent comme des lexiques.
On peut déclarer une classe des manières suivantes :

  • class NAME BLOCK
  • class NAME VERSION BLOCK
  • class NAME;
  • class NAME VERSION;

Les champs

Le mot clé 'field' permet de déclarer des variables à l’intérieur d’une classe. Les valeurs de ces variables sont privées par défaut, mais on peut créer une fonction qui les rend accessibles.

  • field VARIABLE_NAME;
  • field VARIABLE_NAME = EXPR;
  • field VARIABLE_NAME : ATTRIBUTES;
  • field VARIABLE_NAME : ATTRIBUTES = EXPR;

Les méthodes

Le mot-clé 'method' permet de déclarer des fonctions (anonymes ou pas) propres à une classe.

  • method METHOD_NAME SIGNATURE BLOCK
  • method METHOD_NAME BLOCK
  • method SIGNATURE BLOCK
  • method BLOCK

Comme dit, ceci reste une fonctionnalité nouvelle et expérimentale, encore en développement. Elle fera l’objet d’ajouts, de raffinements et sans doute de modifications. Comme elle est expérimentale, son utilisation génère des avertissements dans la catégorie experimental::class. Ceux-ci peuvent être réduits au silence par une déclaration de non-avertissement.

Comme toujours, use v5.38; active les fonctionnalités pour cette version de Perl.

use v5.38;
sub add ($x, $y) {
    return $x + $y;
}

Unicode 15.0 est pris en charge

Chaque version de Perl essaie d’avoir le support de la dernière version d’Unicode connue et Perl 5.38 ne fait pas exception à la règle. La version 15.0 d’Unicode étant sortie en septembre 2022, c’est le support de cette version qu’on retrouve dans Perl 5.38.

Si les développeurs de Perl visent la sortie d’une nouvelle version en juin, c’est, entre autres raisons, parce que la communauté Perl organise la conférence Perl et Raku (« The Perl and Raku Conference », en vo) au mois de juillet. L’édition de cette année s’est déroulée à Toronto, au Canada et on a pu y discuter de l’utilisation du langage, des ajouts qui sont prévus et de l’utilisation de certains modules. On peut retrouver l’ensemble des présentations données sur la chaîne Youtube de l’évènement.

Commentaires : voir le flux Atom ouvrir dans le navigateur

par Emmanuel Seyman, kai, volts, orfenor, J-Forget, Benoît Sibaud, Xavier Teyssier, Ysabeau

DLFP - Dépêches

LinuxFr.org

Proxmox Virtual Environment 8.1 avec SDN et Secure Boot disponible

 -  25 novembre - 

Proxmox Server Solutions GmbH a publié la version 8.1 de sa plate-forme de virtualisation libre Proxmox Virtual Environment (VE)Proxmox (...)


Comment écrit-on les systèmes d’écriture aujourd’hui ?

 -  20 novembre - 

Pour cette nouvelle excursion dans le temps et l’espace, le chemin de fer Transimpressux vous amènera dans l’Égypte antique, en Algérie et en Afrique (...)


Sortie d'enioka Scan version 2.4

 -  20 novembre - 

Enioka Scan est une bibliothèque Android open-source qui simplifie l’intégration des scanners de code-barre dans son application.La bibliothèque a (...)


Sortie de passbolt 4.4.0 : gestion TOTP, suspension des utilisateurs

 -  20 novembre - 

Un mot de passe à usage unique basé sur le temps (TOTP, Time based One Time Password en anglais) est un algorithme permettant de générer un mot de (...)


Des nouvelles de Xonotic

 -  18 novembre - 

La dernière dépêche traitant du jeu Xonotic sur LinuxFr date de 2018, la dernière annonce d’une nouvelle version date de 2017, il y a 6 ans ! Beaucoup (...)