Излезе новата версия на интерпретатора на програмния език Perl 5.32.0.

Зад гърба си имаме 13 месеца разработки, 140 хиляди променени реда в 880 файла.

Ключови нововъведения:

  • Нов експериментален оператор isa, който проверява дали даденият обект е инстанция на предадения клас или клас-наследник:

    if( $obj isa Package::Name ) { … }

  • Поддръжка Unicode 13.0!
  • Въведена е възможност за записване на оператори за сравнение с един приоритет под формата на верига:

    if ( $x < $y <= $z ) {…}

    Същото е като:

    if ( $x < $y && $y <= $z ) {…}

    За тази особеност можете да прочетете по-подробно в perlop (раздел "Операторна приоритизация и асоциативност").

  • Буквените обозначения на изразите в регулярните изрази вече не са експериментални. Пример: (*pla:pattern), повече в perlre.
  • Възможността за ограничаване на проверявания шаблон до конкретна писмена система (повече "Script Runs" в perlre) вече не е експериментална.
  • Въведена е възможност за деактивиране на непрямото извикване на методи. Можете да прочетете повече в бележката на Брайън Д Фоя.

Някои оптимизации:

  • Проверката за свързване на допълнителни функции (features) сега става по-бързо.
  • Специалните случаи за сортиране (става въпрос за {$a $b} и {$b $a} ) са значително ускорени.

Избрах само някои неща по свой вкус. Има и други нововъведения, несъвместими с предишни версии, актуализации на документацията и решени проблеми със сигурността. Предлагам да се запознаете с пълната perldelta на линка.

Източник: linux.org.ru

Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри 🔥 Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри | ProHoster