Perl 5.32.0

Вийшла нова версія інтерпретатора мови програмування 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 (розділ «Operator Precedence and Associativity»).

  • Літерні позначення тверджень у регулярних виразах більше не є експериментальними. Приклад: (*pla:pattern), докладніше у perlre.
  • Можливість обмеження шаблону, що перевіряється конкретною системою листа (докладніше «Script Runs» в perlre) більше не є експериментальною.
  • З'явилася можливість вимикати непрямий виклик методів. Детальніше можна почитати у замітці Брайана Д Фоя.

Деякі оптимізації:

  • Перевірка підключення додаткових можливостей тепер відбувається швидше.
  • Істотно прискорені спеціальні випадки для сортування (мова про {$a<=>$b} та {$b<=>$a}).

Вибрав лише деякі речі на власний смак. Є інші нововведення, несумісні з попередніми версіями, зміни, оновлення документації та закриті проблеми безпеки. Пропоную ознайомитись з повною perldelta за посиланням.

Джерело: linux.org.ru

Додати коментар або відгук