{"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\/et\/blog\/news\/dostupen-yazyk-programmirovaniya-perl-5-42","title":{"rendered":"Saadaolev programmeerimiskeel Perl 5.42","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>P\u00e4rast aasta arendust on ilmunud uus stabiilne Perl programmeerimiskeele versioon - 5.42. Uue v\u00e4ljaande ettevalmistamisel muudeti umbes 280 000 rida koodi (ilma dokumentatsioonita ja automaatselt genereeritud kood - 93 000), muudatused puudutasid 1500 faili, arenduses osales 64 arendajat.    <\/p>\n<p>Versioon 5.42 v\u00e4lja anti vastavalt heakskiidetud arendusgraafikule, mis oli kehtestatud kaksteist aastat tagasi, h\u00f5lmates uute stabiilsete versioonide v\u00e4ljaandmist kord aastas ja t\u00e4iendavate v\u00e4ljaannete tegemist iga kolme kuu tagant. Umbes kuu aja p\u00e4rast plaanitakse v\u00e4lja anda esimene t\u00e4iendav v\u00e4ljaanne Perl 5.42.1, milles parandatakse k\u00f5ige olulisemad vead, mis avastati Perl 5.42.0 rakendamisel. Samuti l\u00f5petatakse Perl 5.42 v\u00e4ljaandmisega versiooni 5.38 tugi, millele v\u00f5ivad tulevikus uuendused ilmneda ainult kriitiliste turvaprobleemide tuvastamisel. Varsti algab katseversiooni 5.43 arendamine, mille p\u00f5hjal juunis 2026. aastal formuleeritakse stabiilne Perl 5.44 v\u00e4ljaanne, kui ei otsustata \u00fcle minna number 7.x numereerimisele.        <\/p>\n<p>Peamised muutused:   <\/p>\n<ul>\n<li class=\"l\"> Lisatud on katsetavad loendi t\u00f6\u00f6tlemise operaatorid - \u00abany { BLOCK } @list\u00bb ja \u00aball { BLOCK } @list\u00bb, mis meenutavad operaatorit \u00abgrep { BLOCK } @list\u00bb, kuid saavad tagastada vaid v\u00e4\u00e4rtusi true v\u00f5i false. Operaator \u00aball\u00bb tagastab \u00abtrue\u00bb, kui tingimus kehtib k\u00f5igi loendi elementide puhul, samas kui operaator \u00abany\u00bb - kui tingimus kehtib v\u00e4hemalt \u00fche elementide puhul. Operaatorite funktsionaalsus sarnaneb List::Util mooduli funktsioonidega, kuid sisseehitatud variandid on kiirem ja tarbivad v\u00e4hem m\u00e4lu.         use v5.42;     use feature 'keyword_all';     no warnings 'experimental::keyword_all';     my @numbers = ...     if ( all { $_ % 2 == 0 } @numbers ) {         say 'K\u00f5ik numbrid on paarisarvud';     }\n<li class=\"l\"> Klassis m\u00e4\u00e4ratud v\u00e4ljadele on rakendatud atribuut \u00ab:writer\u00bb, mida kasutatakse meetodi automaatseks genereerimiseks, et kirjutada muutuja v\u00e4\u00e4rtus v\u00e4lja praegusele klassi eksemplarile.       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\"> Lisatud toetuse leksikaalsete meetodite m\u00e4\u00e4ratlemiseks, mis sarnaselt leksikaalsete subprogrammi (&#171;lexical_subs&#187;) m\u00e4\u00e4ratlemisele, v\u00f5imaldab luua meetodeid, mis on saadaval ainult ploki leksikaalses vaates, kus need loodi. Selliste meetodite loomiseks kasutatakse v\u00e4ljendit &#171;my nimi_meetod&#187;.\n<li class=\"l\"> Lisatud operaator &#171;-&gt;&#038;&#187;, mis v\u00f5imaldab kutsuda leksikaalses vaates asuvaid alprogrammi, nagu need oleks meetodid. Koos leksikaalsete meetodite m\u00e4\u00e4ratlemise v\u00f5imalusega rakendab uus operaator funktsionaalsust, mis sarnaneb  privaatsed meetodid.\n<li class=\"l\"> Lisatud omistamisoperaator &#171;A ^^= B&#187;, mis sooritab operatsiooni &#171;A = A XOR  B&#187;.\n<li class=\"l\"> Lisatud pragma &#171;source::encoding&#187;, mis m\u00e4\u00e4ratleb algkoodi kodeeringu. ASCII kodeeringuga koodi jaoks v\u00f5ib kasutada &#171;use source::encoding &#8216;ascii'&#187; (vaikimisi), ja UTF-8 jaoks &#8212;  &#171;use source::encoding &#8216;utf8&#8242;&#187;, mille viimane v\u00e4ljend on ekvivalentne v\u00e4ljendiga &#171;use utf8&#187;. T\u00f5lgendus annab vea, kui ASCII m\u00e4rgitud koodis leidub UTF-8 m\u00e4rke, v\u00f5i kui UTF-8 m\u00e4rgitud koodis kasutatakse escape-j\u00e4rjestusi &#171;&#092;x{}&#187;. Koodi osa kontrolli keelamiseks v\u00f5ib kasutada v\u00e4\u00e4rtust &#171;use no source::encoding&#187;. Praktikas v\u00f5ib lisatud pragma olla kasulik juhtumite tuvastamiseks, kus arendaja unustas m\u00e4\u00e4rata &#171;use utf8&#187; UTF-8 kodeeringuga koodile.\n<li class=\"l\"> Nimekirja &#171;CORE::&#187; on lisatud funktsioon chdir(). N\u00e4iteks on n\u00fc\u00fcd sellele funktsioonile v\u00f5imalik viidata kui &#171;&#038;CORE::chdir($dir)&#187; v\u00f5i &#171;my $ref = &#092;&#038;CORE::chdir; $ref-&gt;($dir)&#187;.\n<li class=\"l\"> Lisatud v\u00e4ljend &#8216;no feature &#171;apostrophe_as_package_separator&#187;&#8216; pakettide nimede eraldajana tugi v\u00e4ljal\u00fclitamiseks (n\u00e4iteks &#171;My&#8217;Module&#8217;Var&#187; asemel &#171;My::Module::Var&#187;). Alguses plaaniti Perl 5.42 eemaldada  sarnaste eraldajate toetuse, mis oli varem deklareeritud vananenuks, kuid arutelude k\u00e4igus otsustati see v\u00f5imalus vaikimisi s\u00e4ilitada, kuid ette n\u00e4ha valik selle keelamiseks.\n<li class=\"l\"> Tagasi on toodud funktsionaalsus 'switch' ja operaator '~~', mis varem olid m\u00e4rgitud vananenuks ja plaanitud eemaldamiseks. Alates Perl 5.36 ja 5.42 versioonidest on funktsionaalsused 'switch' ja '~~' vaikimisi keelatud, kui kood on seotud keele versioonidega (nt 'use v5.42'), kuid nende aktiviseerimiseks v\u00f5ib kasutada 'use feature 'switch'' ja 'use feature 'smartmatch''.\n<li class=\"l\"> Lisatud tugi Unicode 16.0 spetsifikatsioonile.            <\/ul>\n<p>Allikas: <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.1.1 - 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\/et\/blog\/news\/dostupen-yazyk-programmirovaniya-perl-5-42\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"et_EE\" \/>\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\/et\/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\udd47Programmeerk \u044f\u0437\u044b\u043a Perl 5.42 on n\u00fc\u00fcd saadaval | ProHoster","description":"Aasta kestnud arenduse j\u00e4rel on v\u00e4lja antud uus stabiilne Perl 5.42 programmeerimiskeele versioon.","canonical_url":"https:\/\/prohoster.info\/et\/blog\/news\/dostupen-yazyk-programmirovaniya-perl-5-42","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"et_EE","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\/et\/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\/et\/wp-json\/wp\/v2\/posts\/138692","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/comments?post=138692"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/138692\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/media?parent=138692"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/categories?post=138692"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/tags?post=138692"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}