Обявен е излез на Perl 7

Вчера вечерта на „Perl and Raku Conference in the Cloud“, Sawyer X обяви прехода от основната версия Perl от 5 на 7. Работата вече е в ход, новата версия ще излезе в рамките на годината. Не очаквайте много промени, накратко: Perl 7 е все същият Perl 5.32 с модерни настройки по подразбиране. Вече не е необходимо да включвате явно функциите, които вече използвате, те ще бъдат активирани автоматично!

Какво ще бъде включено?

Все още няма пълен списък, но strong и warnings определено ще има! В 7-ия релиз сигнатурите вероятно ще останат експериментални, а utf8 също няма да успеят да включат.

Какво ще бъде деактивирано?

  • Неправилен извикване на методи:

    {;
    package Foo;

    sub new { bless {} }
    sub bar { print "Hello from bar()!n" x pop }
    }

    # Нормальный вызов
    my $foo = Foo->new();
    # Непрямой вызов
    bar $foo 42;

  • Празни думи (barewords) като идентификатори на дескриптори (с изключение на стандартните (STDIN, STDOUT, STDERR))
  • Псевдо многомерни хешове в стил Perl 4.

    # примеры взяты из perldoc perlvar
    $foo{$x,$y,$z}
    # на самом деле означает $foo{join($;, $x, $y, $z)}

  • Старите прототипи в стил Perl 4. Сега трябва да пишете само така:

    sub foo :prototype($$) ($left, $right) {
    return $left + $right;
    }

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

Все пак остава възможност да върнете всичко обратно наведнъж:
use compat::perl5;
Или по един.

Perl 5.32 преминава в режим на дълготрайна поддръжка за срок от 5 години.

Разширено обявление от Брайън Д Фой: https://www.perl.com/article/announcing-perl-7/
TL;DR версия от него: http://blogs.perl.org/users/brian_d_foy/2020/06/the-perl-7-tldr.html

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

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