{"id":138692,"date":"2025-07-03T23:12:17","date_gmt":"2025-07-03T21:12:17","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/dostupen-yazyk-programmirovaniya-perl-5-42"},"modified":"2025-07-03T23:12:17","modified_gmt":"2025-07-03T21:12:17","slug":"dostupen-yazyk-programmirovaniya-perl-5-42","status":"publish","type":"post","link":"https:\/\/prohoster.info\/fr\/blog\/news\/dostupen-yazyk-programmirovaniya-perl-5-42","title":{"rendered":"Le langage de programmation Perl 5.42 est disponible.","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Apr\u00e8s une ann\u00e9e de d\u00e9veloppement, la nouvelle version stable du langage de programmation Perl \u2014 5.42 \u2014 a \u00e9t\u00e9 publi\u00e9e. En pr\u00e9paration de cette nouvelle version, environ 280 000 lignes de code ont \u00e9t\u00e9 modifi\u00e9es (sans documentation et code g\u00e9n\u00e9r\u00e9 automatiquement \u2014 93 000), impliquant 1500 fichiers, avec la participation de 64 d\u00e9veloppeurs.    <\/p>\n<p>La version 5.42 a \u00e9t\u00e9 publi\u00e9e selon le calendrier de d\u00e9veloppement fixe approuv\u00e9 il y a douze ans, pr\u00e9voyant la sortie de nouvelles versions stables chaque ann\u00e9e et de mises \u00e0 jour correctives tous les trois mois. Environ un mois apr\u00e8s, la premi\u00e8re mise \u00e0 jour corrective de Perl 5.42.1 sera publi\u00e9e, corrigeant les erreurs les plus significatives identifi\u00e9es lors de l'impl\u00e9mentation de Perl 5.42.0. Avec la sortie de Perl 5.42, le support de la version 5.38 a \u00e9t\u00e9 arr\u00eat\u00e9, des mises \u00e0 jour pouvant \u00eatre publi\u00e9es \u00e0 l'avenir uniquement en cas de probl\u00e8mes critiques de s\u00e9curit\u00e9. Le processus de d\u00e9veloppement de la version exp\u00e9rimentale 5.43 commencera bient\u00f4t, sur la base de laquelle une version stable de Perl 5.44 sera form\u00e9e en juin 2026, sauf d\u00e9cision de passer \u00e0 la num\u00e9rotation 7.x.        <\/p>\n<p>Principaux changements :   <\/p>\n<ul>\n<li class=\"l\"> Des op\u00e9rateurs exp\u00e9rimentaux pour le traitement des listes \u2014 \u00ab any { BLOCK } @list \u00bb et \u00ab all { BLOCK } @list \u00bb \u2014 ont \u00e9t\u00e9 ajout\u00e9s, ressemblant \u00e0 l'op\u00e9rateur \u00ab grep { BLOCK } @list \u00bb, mais pouvant ne retourner que des valeurs true ou false. L'op\u00e9rateur \u00ab all \u00bb retourne \u00ab true \u00bb lorsque la condition est remplie pour tous les \u00e9l\u00e9ments de la liste, tandis que l'op\u00e9rateur \u00ab any \u00bb le fait lorsqu'elle est v\u00e9rifi\u00e9e pour au moins un \u00e9l\u00e9ment. La fonctionnalit\u00e9 des op\u00e9rateurs est similaire \u00e0 celle des fonctions du module List::Util, mais les variantes int\u00e9gr\u00e9es sont plus rapides et n\u00e9cessitent moins de m\u00e9moire.         use v5.42;     use feature 'keyword_all';     no warnings 'experimental::keyword_all';     my @numbers = \u2026     if ( all { $_ % 2 == 0 } @numbers ) {         say 'All the numbers are even';     }\n<li class=\"l\"> Un attribut \u00ab :writer \u00bb a \u00e9t\u00e9 impl\u00e9ment\u00e9 pour les champs d\u00e9finis \u00e0 l'int\u00e9rieur de la classe, utilis\u00e9 pour cr\u00e9er automatiquement une m\u00e9thode qui \u00e9crit la valeur d'une variable dans le champ pour l'instance actuelle de la classe.       class Point {         field $x :reader :writer :param;         field $y :reader :writer :param;     }     my $p = Point-&gt;new( x =&gt; 20, y =&gt; 40 );     $p-&gt;set_x(60);\n<li class=\"l\"> Ajout de la prise en charge de la d\u00e9finition de m\u00e9thodes lexicales, qui, par analogie avec la d\u00e9finition de sous-programmes lexicaux (\u00ab lexical_subs \u00bb), permet de cr\u00e9er des m\u00e9thodes accessibles uniquement dans la port\u00e9e lexicale du bloc dans lequel elles ont \u00e9t\u00e9 cr\u00e9\u00e9es. Pour cr\u00e9er de telles m\u00e9thodes, on utilise l'expression \u00ab my nom_de_m\u00e9thode \u00bb.\n<li class=\"l\"> Ajout de l'op\u00e9rateur \u00ab -&gt;&amp; \u00bb, permettant d'appeler des sous-programmes situ\u00e9s dans la port\u00e9e lexicale, comme s'ils \u00e9taient des m\u00e9thodes. Combin\u00e9 avec la possibilit\u00e9 de d\u00e9finir des m\u00e9thodes lexicales, ce nouvel op\u00e9rateur impl\u00e9mente une fonctionnalit\u00e9 similaire aux m\u00e9thodes priv\u00e9es.\n<li class=\"l\"> Ajout de l'op\u00e9rateur d'affectation \u00ab A ^^= B \u00bb, qui ex\u00e9cute l'op\u00e9ration \u00ab A = A XOR B \u00bb.\n<li class=\"l\"> Ajout de la pragma \u00ab source::encoding \u00bb, d\u00e9finissant l'encodage du code source. Pour le code en encodage ASCII, on peut sp\u00e9cifier \u00ab use source::encoding 'ascii' \u00bb (par d\u00e9faut), et pour l'UTF-8 \u2014 \u00ab use source::encoding 'utf8' \u00bb, cette derni\u00e8re expression \u00e9tant \u00e9quivalente \u00e0 \u00ab use utf8 \u00bb. L'interpr\u00e9teur renverra une erreur si le code marqu\u00e9 comme ASCII contient des caract\u00e8res UTF-8, ou si le code marqu\u00e9 comme UTF-8 utilise des s\u00e9quences d'\u00e9chappement \u00ab  \u00bb. Pour d\u00e9sactiver la v\u00e9rification d'une partie du code, on peut utiliser la valeur \u00ab use no source::encoding \u00bb. En pratique, la pragma ajout\u00e9e peut \u00eatre utile pour identifier les cas o\u00f9 un d\u00e9veloppeur a oubli\u00e9 de sp\u00e9cifier \u00ab use utf8 \u00bb pour le code en encodage UTF-8.\n<li class=\"l\"> Ajout de la fonction chdir() dans l'espace de noms \u00ab CORE:: \u00bb. Par exemple, cette fonction peut d\u00e9sormais \u00eatre appel\u00e9e comme \u00ab &amp;CORE::chdir($dir) \u00bb ou \u00ab my $ref = &amp;CORE::chdir; $ref-&gt;($dir) \u00bb.\n<li class=\"l\"> Ajout de l'expression \u2018no feature \u2018apostrophe_as_package_separator\u2019 pour d\u00e9sactiver la prise en charge de l'utilisation du caract\u00e8re \u2018 comme s\u00e9parateur de noms de packages (par exemple, \u2018My\u2019Module\u2019Var\u2019 au lieu de \u2018My::Module::Var\u2019). Initialement, dans Perl 5.42, il \u00e9tait pr\u00e9vu de supprimer la prise en charge de tels s\u00e9parateurs, qui avaient \u00e9t\u00e9 d\u00e9clar\u00e9s obsol\u00e8tes, mais lors des discussions, il a \u00e9t\u00e9 d\u00e9cid\u00e9 de conserver cette possibilit\u00e9 par d\u00e9faut, tout en pr\u00e9voyant une option pour la d\u00e9sactiver.\n<li class=\"l\"> La fonctionnalit\u00e9 \u00ab switch \u00bb et l'op\u00e9rateur \u00ab ~~ \u00bb, qui \u00e9taient auparavant marqu\u00e9s comme obsol\u00e8tes et pr\u00e9vus pour \u00eatre supprim\u00e9s, ont \u00e9t\u00e9 r\u00e9int\u00e9gr\u00e9s dans les fonctionnalit\u00e9s disponibles. \u00c0 partir des versions Perl 5.36 et 5.42, les capacit\u00e9s \u00ab switch \u00bb et \u00ab ~~ \u00bb sont d\u00e9sactiv\u00e9es par d\u00e9faut lors de l'association du code aux versions du langage (par exemple, en sp\u00e9cifiant \u00ab use v5.42 \u00bb), mais peuvent \u00eatre activ\u00e9es avec les expressions \u2018use feature \u00ab switch \u00bb\u2019 et \u2018use feature \u00ab smartmatch \u00bb\u2019.\n<li class=\"l\"> Ajout du support pour la sp\u00e9cification Unicode 16.0.            <\/ul>\n<p>Source : <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=63519\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u043e\u0441\u043b\u0435 \u0433\u043e\u0434\u0430 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0440\u0435\u043b\u0438\u0437 \u043d\u043e\u0432\u043e\u0439 \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u043e\u0439 \u0432\u0435\u0442\u043a\u0438 \u044f\u0437\u044b\u043a\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f Perl &#8212; 5.42. \u041f\u0440\u0438 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0435 \u043d\u043e\u0432\u043e\u0433\u043e \u0432\u044b\u043f\u0443\u0441\u043a\u0430 \u0431\u044b\u043b\u043e \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u043e \u043e\u043a\u043e\u043b\u043e 280 \u0442\u044b\u0441\u044f\u0447 \u0441\u0442\u0440\u043e\u043a \u043a\u043e\u0434\u0430 (\u0431\u0435\u0437 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438 \u0438 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430 &#8212; 93 \u0442\u044b\u0441\u044f\u0447\u0438), \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0437\u0430\u0442\u0440\u043e\u043d\u0443\u043b\u0438 1500 \u0444\u0430\u0439\u043b\u043e\u0432, \u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u043f\u0440\u0438\u043d\u044f\u043b\u0438 \u0443\u0447\u0430\u0441\u0442\u0438\u0435 64 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430. \u0412\u0435\u0442\u043a\u0430 5.42 \u0432\u044b\u043f\u0443\u0449\u0435\u043d\u0430 \u0432 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0438 \u0441 \u0443\u0442\u0432\u0435\u0440\u0436\u0434\u0451\u043d\u043d\u044b\u043c \u0434\u0432\u0435\u043d\u0430\u0434\u0446\u0430\u0442\u044c \u043b\u0435\u0442 \u043d\u0430\u0437\u0430\u0434 \u0444\u0438\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u043c \u0433\u0440\u0430\u0444\u0438\u043a\u043e\u043c [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-138692","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041f\u043e\u0441\u043b\u0435 \u0433\u043e\u0434\u0430 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0440\u0435\u043b\u0438\u0437 \u043d\u043e\u0432\u043e\u0439 \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u043e\u0439 \u0432\u0435\u0442\u043a\u0438 \u044f\u0437\u044b\u043a\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f Perl - 5.42.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/fr\/blog\/news\/dostupen-yazyk-programmirovaniya-perl-5-42\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"fr_FR\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0414\u043e\u0441\u0442\u0443\u043f\u0435\u043d \u044f\u0437\u044b\u043a \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f Perl 5.42 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041f\u043e\u0441\u043b\u0435 \u0433\u043e\u0434\u0430 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0440\u0435\u043b\u0438\u0437 \u043d\u043e\u0432\u043e\u0439 \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u043e\u0439 \u0432\u0435\u0442\u043a\u0438 \u044f\u0437\u044b\u043a\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f Perl - 5.42.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/fr\/blog\/news\/dostupen-yazyk-programmirovaniya-perl-5-42\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2025-07-03T21:12:17+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2025-07-03T21:12:17+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Le langage de programmation Perl 5.42 est disponible | ProHoster","description":"Apr\u00e8s une ann\u00e9e de d\u00e9veloppement, la nouvelle branche stable du langage de programmation Perl - 5.42 a \u00e9t\u00e9 publi\u00e9e.","canonical_url":"https:\/\/prohoster.info\/fr\/blog\/news\/dostupen-yazyk-programmirovaniya-perl-5-42","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"fr_FR","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0414\u043e\u0441\u0442\u0443\u043f\u0435\u043d \u044f\u0437\u044b\u043a \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f Perl 5.42 | ProHoster","og:description":"\u041f\u043e\u0441\u043b\u0435 \u0433\u043e\u0434\u0430 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0440\u0435\u043b\u0438\u0437 \u043d\u043e\u0432\u043e\u0439 \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u043e\u0439 \u0432\u0435\u0442\u043a\u0438 \u044f\u0437\u044b\u043a\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f Perl - 5.42.","og:url":"https:\/\/prohoster.info\/fr\/blog\/news\/dostupen-yazyk-programmirovaniya-perl-5-42","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2025-07-03T21:12:17+00:00","article:modified_time":"2025-07-03T21:12:17+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"138692","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-23 13:39:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2026-01-23 13:39:19","updated":"2026-01-23 13:39:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts\/138692","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/comments?post=138692"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts\/138692\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/media?parent=138692"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/categories?post=138692"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/tags?post=138692"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}