Пока ты попивал смузи и катался на гироскутере, серьёзные пацаны подготовили к выпуску Perl 5.28Что нового?Поддержка Unicode 10.0 (появился символ биткоина).delete можно использовать на срезах: my %sanitised_values = delete %input_values{@allowed_keys};Проверка системы письменности на однородность (script runs): 'Pеrl' =~ /^(*sr:\w+$)/ Вернёт «ложь», т.к. буква «е» кириллическая. ( [ подробнее о script runs ](
https://metacpan.org/pod/perlre#Script-Runs ) ) Экспериментальные возможности:Поддержка буквенных синонимов для некоторых утверждений (assertion) регулярных выражений (Осторожно! Может повысить читабельность!):(?=...) (*pla:...) or (*positive_lookahead:...) (?!...) (*nla:...) or (*negative_lookahead:...) (?Улучшения производительности:Серьёзно снижены накладные расходы связанные с использованием параметров юникод (\p{...}) в регулярных выражениях.Существенно ускорена [ множественная конкатенация ](
https://www.youtube.com/watch?v=IhMILnOVMnM&feature=youtu.be&t=1676 ) . Например, следующий код на x86_64 работает в 4 раза быстрее: my $s; my $a = "ab\x{100}cde"; my $b = "fghij"; my $c = "\x{101}klmn"; for my $i (1..10_000_000) { $s = "\x{100}wxyz"; $s .= "foo=$a bar=$b baz=$c"; } sprintf() с фиксированным набором аргументов и строкой формата содержащей только %s и %% работает быстрее.ref() работает намного быстрей в булевом контексте, т.к. больше не создаётся временная строка вроде Foo=ARRAY(0x134af48).Циклы for() и аналогичные конструкции в большинстве ситуаций будут работать быстрей [ Появилась возможность ](
https://metacpan.org/pod/release/XSAWYERX/perl-5.28.0-RC1/pod/perldelta.pod#Subroutines-no-longer-need-typeglobs ) хранить процедуры в пакетах без использования таблиц имён, что позволяет сэкономить крупные объёмы памяти. Другие изменения:Ядро почистили от «use vars». Многие продолжают использовать «use vars», что является плохой практикой с момента введения «our» в версии 5.6.0.Новое предупреждение для случаев: my $name='Pistachio'; print "In $name's house"; Рекомендую посмотреть на [ видео ](
https://youtu.be/IhMILnOVMnM?t=2028 ) . Возможно улыбнётесь. Видео: [ Sawyer X рассказывает ](
https://www.youtube.com/watch?v=IhMILnOVMnM ) о нововведениях и фитчах предыдущих версий, которые ты пропустил.
Ссылка:
https://www.linux.org.ru/news/development/14318675