áá˝áśáˇááźááŻá¸áááŻá¸áááşáážáŻáá áşáážá áşááźáŽá¸ááąáŹááş ááŻáśáážáááşááŻááşááą Perl ááááŻááááşá¸áááşá¸ááŹááŹá ááŹá¸á áááşááźáááşááąáŹááŹááá˝á˛áĄáá áşááᯠááŻááşááźááşááźááşá¸ - 5.44... áááşááąáŹáˇáᲠááźááşáááşááąáááşá ááŻááşááąáážáŻáĄáá áşáá˝ááş ááŻááşáááŻááşá¸ááąáŤááşá¸ ááá,ááá áááˇáşááᯠááźáąáŹááşá¸áá˛áá˛áˇáááş (á áŹáá˝ááşá áŹáááşá¸ááťáŹá¸áážááˇáş áĄáááŻáĄááťáąáŹááşááŻááşááąá¸ááąáŹ ááŻááşááťáŹá¸ áááŤáááşá፠- ááá,ááá)á ááźáąáŹááşá¸áá˛áážáŻááťáŹá¸áááş áááŻááş ááá ááᯠáááşááąáŹááşáážáŻáážááá˛áˇááźáŽá¸ ááąáŹáˇááşáá˛ááąá¸ááŹá¸áá° áá áŚá¸á áá˝áśáˇááźááŻá¸áááŻá¸áááşáážáŻáá˝ááş ááŤáááşáá˛áˇáááşá
5.44 branch ááᯠáá áážá áşá ááťáážááşáá˛áˇáá˛áˇ fixed development schedule áážááˇáşáĄáᎠááŻááşááźááşáá˛áˇááźáŽá¸ áá áşáážá áşáá áşááźáááş stable branch áĄáá áşááťáŹá¸áážááˇáş ááŻáśá¸ááá áşááźáááş minor release ááťáŹá¸ ááŻááşááźááşáááş ááąáŹááşá¸áááŻááŹá¸ááŤáááşá áááááŻáśá¸ minor release ááźá áşáá˛áˇ Perl 5.44.1 ááᯠPerl 5.44.0 áĄááąáŹááşáĄáááşááąáŹáşáážáŻáĄáá˝ááşá¸ áá˝áąáˇáážááá˛áˇááá˛áˇ áĄááąá¸áĄááźáŽá¸ááŻáśá¸ bug áá˝áąááᯠááźááşáááşááźáŽá¸ áá áşááááˇáşáĄáá˝ááşá¸ ááŻááşááźááşáááŻáˇ á áŽá ááşááŹá¸ááŤáááşá Perl 5.44 ááŻááşááźááşáážáŻáá˛áˇáĄáá° 5.40 branch áĄáá˝ááş support áááşáááŻááşá¸áá˝áŹá¸ááŤááźáŽá áĄááąá¸ááźáŽá¸áá˛áˇ ááŻáśááźáŻáśááąá¸ááźáżááŹáá˝áą áá˝áąáˇáážááážáᏠáĄááŹáááşáážáŹ update áá˝áąááᯠááŻááşááźááşáááŻááşááŤáááşá á áááşááŤááźáŽá ááŻáśá¸ááźááşááťááşáááťááŤá áááá ááŻáážá áş ááááážá áşáááşáá˝ááş Perl 5.46 á áááşááźáááşááąáŹááŻááşááąáážáŻáĄáá˝ááş áĄááźáąááśááźá áşááŹáááˇáş á ááşá¸áááş 5.45 branch á áá˝áśáˇááźááŻá¸áááŻá¸áááşáážáŻááŻááşáááşá¸á ááş áá˝áŹá¸ ááśááŤááşá ááş á.x áááŻáˇá
ááąáŹáˇ áĄááźáąáŹááşá¸áĄáá˛ááťáŹá¸:
- áááşááźáąáŹááŤáááşá áĄáááşááąá¸ááŹá¸ááąáŹ parameter ááťáŹá¸ááᯠáĄááŻáśá¸ááźáŻááźááşá¸á á
ááşá¸áááşááźá
áşáááŻááşááźáą áááşáážááşááťáŹá¸ function body áážáŹáááŻááşáᲠfunction áá˛áˇ declaration áĄáá˝ááşá¸áážáŹ ááąá¸áááŻáˇáá˛áˇ variable list ááᯠáááşáážááşááąá¸áá˛áˇ function áá˝áąá áᎠfeature áĄáá
áşá parameter áá˝áąááᯠkey/value pair áá˝áąáá˛áˇ hashes áá˝áąáážáŹ element áá˝áąááᯠassign ááŻááşááŹáá˛áˇ áááşáá°áá˛áˇ syntax ááᯠáĄááŻáśá¸ááźáŻááźáŽá¸ strict order áĄáááŻááşá¸ áááŻááşáᲠáááşáááˇáş order áĄáááŻááşá¸áááᯠááąá¸áááŻáˇáá˝ááˇáşááźáŻááŤáááşá
- ááŤááťááąáŹááşá¸- sub f { my ($x, $y) = @_; âŚ} f(1, 2);
- áááşáážááşááťáŹá¸- áĄáąáŹááşááś f ($x, $y) { ⌠} f(1, 2);
- áĄáááşááąá¸ááŹá¸ááąáŹ parameter ááťáŹá¸ááŤáááˇáş áááşáážááşááťáŹá¸- sub f (:$x, :$y) { ⌠} f(y => 2, x => 1);
- variable ááťáŹá¸á á˝áŹááŤáááşááąáŹ foreach loops ááťáŹá¸áá˝ááş aliases (pointers ááž pointers áááŻáˇ) áĄááŻáśá¸ááźáŻáááş á ááşá¸áááşááśáˇáááŻá¸áážáŻ áááˇáşáá˝ááşá¸ááŹá¸áááşá á¤áĄááşášááŤáááşáááş single loop iteration áá˝ááş áááşáááŻá¸ááťáŹá¸á á˝áŹááᯠááá°áááˇáşáĄá፠foreach loop áá˝ááş alias áá áşáᯠáááşááŽá¸áááŻááşá áąááŤáááşá áĽáááŹáĄáŹá¸ááźááˇáşá hash á key ááťáŹá¸áážááˇáş áááşáááŻá¸áážá áşááťááŻá¸ááŻáśá¸ááᯠiterating ááŻááşáááˇáşáĄá፠array áá áşááŻááŤááąáŹ hash element áĄáá˝ááş alias áá áşáᯠáááşááŽá¸áááŻááşáááş- use v5.44; use feature qw( refialiasing declared_refs ); my %hash = ( one => [1], two => [2, 2], ); foreach my ( $key, @items ) ( %hash ) { say "The $key array contains: @items"; } # version 5.44 ááááŻááşááŽáá˝ááşá dereferencing áááŻáĄááşáááşááźá áşáááş- foreach my ( $key, $var ) ( %hash ) { say "The $key array contains: @$var"; } # á ááşá¸áááş refiasing áážááˇáş declared_refs features ááťáŹá¸áááŤáá˛: foreach my $key (keys %hash) { "The $key array contains: @{$hash{$key}}" ááŻááźáąáŹááŤá }
- ááŻáśáážááşáĄááŻáśá¸áĄáážáŻááşá¸ááťáŹá¸áá˝ááş áĄááąáŹááşáĄáááşááąáŹáşáá˛áˇáááşá á ááşá¸áááşáᲠ'enhanced_xx' ááŻááşáááş /xx modifier ááᯠááąá¸ááąáŹááˇáşáá˝ááşá¸á áá˝ááşá¸ááťáŹá¸ ([a-zA-Z]) áĄáá˝ááşá¸áážá á áŹááŻáśá¸áĄáááşá¸ááťáŹá¸áážááˇáşáĄáá° áĄááŻáśá¸ááźáŻá áááşá¸áááŻáˇááᯠáááŻááşá¸ááťáŹá¸á á˝áŹáá˝ááş áááŻááşá¸ááźáŹá¸áááş áááŻáˇáááŻááş áážááşááťááşááťáŹá¸áááˇáşáá˝ááşá¸áááş áá˝ááˇáşááźáŻáááşá áĽáááŹáĄáŹá¸ááźááˇáşá if ($text =~ m/[a-zA-Z]/) áĄááźáąáĄááąááᯠáĄáąáŹááşááŤáĄáááŻááşá¸ ááąá¸ááŹá¸áááŻááşáááş- if ($text =~ m/[a-z # á áŹááŻáśá¸áĄááąá¸ A-Z # á áŹááŻáśá¸áĄááźáŽá¸ ]/xx) {
- pseudo-random number generator áááş getentropy() system call ááᯠáĄááŻáśá¸ááźáŻá áááşá¸ááᯠááśáˇáááŻá¸ááąá¸ááąáŹ á áá áşááťáŹá¸áá˝ááş entropy ááᯠááá°áááş (Linuxá ááŽáĄááşá áşááŽá macOS). áĄááźáŹá¸á áá áşááťáŹá¸áá˝ááşá entropy ááᯠ/dev/urandom device ááž áááşáážáŻááźááşá¸ áááŻáˇáááŻááş áĄááťáááşá process ID áážááˇáş pointer áááşáááŻá¸áááŻáˇá hash ááᯠáĄááŻáśá¸ááźáŻááźááşá¸ááźááˇáş ááážááááşá
- áááşáážááşááťááş ááśáˇáááŻá¸áážáŻ áááˇáşáá˝ááşá¸ááŹá¸áááşá áá°ááŽááŻááş 17.0.
- áá°ááŽááŻááşá ááşá¸ááťááşá¸ááťáŹá¸ááᯠááááťá á˝áŹáááŻááşááŹááźááşá¸ááźááˇáş identifier name ááťáŹá¸áážááˇáş regular expression group ááťáŹá¸áĄáá˝ááş ááąááťáŹá áąáá˛áˇááźáŽá¸á ááááşá w class ááźááˇáş áĄááťáŻáśá¸áááşáá˛áˇááąáŹ Unicode á áŹááŻáśá¸ ááá áááˇáşááᯠáááŻáĄá፠ááŹá¸ááźá áşááŹá¸áááşá áĽáááŹáĄáŹá¸ááźááˇáşá áĄáášáááŹááťáŹá¸á ááááşá¸ááťáŹá¸áážááˇáş underscore á áŹááŻáśá¸áĄáŹá¸ááŻáśá¸ááᯠáĄááťáŻáśá¸áááşááąáŹ w class áááş áááŻáĄá፠á ááşáááŻááşá¸ááŻáśáááşáááşá áŹááŻáśá¸ááťáŹá¸ááᯠáááşááŻááşááŹá¸ááźáŽá¸á áááşá¸áááŻáˇáááş ááááˇáşá áŹááŻáśá¸ááťáŹá¸áážááˇáş áááşáá°ááąáŹáşáááşá¸ áá°ááŽááźááşá¸ááážáááąá á¤áĄááźáŻáĄáá°ááźáąáŹááşá¸áá˛áážáŻáááş utf8 ááŻááşáááŻáĄááŻáśá¸ááźáŻááąáŹ ááááŻááááşááťáŹá¸áááŻáᏠáááşááąáŹááşáážáŻáážááááşá
- Perl_study_chunk ááŻááşááąáŹááşááťááşááťáŹá¸áá˝ááş buffer overflows ááźáąáŹááˇáşááźá áşááąáŤáşááŹááąáŹ áĄáŹá¸áááşá¸ááťááşááťáŹá¸ááᯠááźááşáááşááźáŽá¸ááŤááźáŽ (CVE-2026-8376, 32-bit assemblies ááťáŹá¸áá˝ááş ááąáŤáşááŹáááş) áážááˇáş S_measure_struct (CVE-2026-57432) áááŻáˇáĄááźááş Regex áĄááşááťááşáážá 16-bit ááąáŹááşááŹá overflow (CVE-2026-13221), áááşá¸áááş regular expression ááᯠááťááşáá˝ááşá áąáááŻááşáááşá
- goto operator ááᯠáĄááŻáśá¸ááźáŻá loops áážááˇáş block constructs ááťáŹá¸áĄáá˝ááşá¸áážá ááąááŹááťáŹá¸áááŻáˇ ááŻááşááťáąáŹáşááźááşá¸ááᯠááŹá¸ááźá áşááŹá¸áááşá á¤áĄááşášááŤáááşááᯠáááá ááŻáážá áşáá˝ááş áááşáááŻááşá¸áá˛áˇáááşá
- compile áĄááťáááşáá˝ááş áááážáááŹá¸ááąáŹ string key ááťáŹá¸ááźááˇáş key/value list ááťáŹá¸ááž hash ááťáŹá¸ááᯠpopulate ááŻááşááźááşá¸áááŻáˇááᯠááźááşáááşá áąáááşáĄáá˝ááş á á˝ááşá¸ááąáŹááşáááş áĄááąáŹááşá¸ááŻáśá¸ááźá áşáĄáąáŹááş ááźáŻááŻááşááŹá¸ááŤáááşá
source: linux.org.ru
