Излезе нова версия на интерпретатора на езика за програмиране Perl 5.32.0.
Зад нас стоят 13 месеца разработка, 140 000 променени реда в 880 файла.
Ключови нововъведения:
- Нов експериментален оператор isa, който проверява дали указаният обект е екземпляр на даден клас или клас-наследник:
ако( $obj е тип Package::Name ) { … }
- Поддръжка Unicode 13.0!
- Добавена е възможност за записване на оператори за сравнение с един приоритет под формата на верига:
ако ( $x < $y <= $z ) {…}
Същото като:
ако ( $x < $y && $y <= $z ) {…}
За тази особеност може да бъде прочетено по-подробно в perlop (раздел „Операторна предимство и асоциативност“).
- Буквените обозначения на операторите в регулярните изрази вече не са експериментални. Пример: (*pla:pattern), по-подробно в perlre.
- Възможността за ограничаване на проверявания шаблон до конкретна система за писане (подробно в „Script Runs“ в perlre) вече не е експериментална.
- Добавена е възможност за деактивиране на непреки извиквания на методи. Повече информация може да се намери в бележката на Брайан Д Фой.
Някои оптимизации:
- Проверката за включването на допълнителни възможности (features) вече е по-бърза.
- Съществено ускори работата при специални случаи на сортиране (става дума за {$a $b} и {$b $a}).
Избрах само някои неща по свой вкус. Има и други нововъведения, несъвместими с предишни версии, промени в документацията и оправени проблеми със сигурността. Предлагам да се запознаете с пълната perldelta на линка.
Източник: linux.org.ru
