Planned for implementation in Fedora 33 is

Last night at the 'Perl and Raku Conference in the Cloud', Sawyer X announced the transition of the main Perl version from 5 to 7. Work is already underway, with the new version to be released within a year. There won’t be a lot of changes; in short, Perl 7 is essentially Perl 5.32 with modern default settings. You won’t need to explicitly enable the features you already use; they will be activated for you!

What will be included?

There is no complete list yet, but strict and warnings definitely! In the 7th release, signatures are likely to remain experimental, and they won't manage to include utf8.

What will be disabled?

  • Indirect method calls:

    {;
    package Foo;

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

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

  • Barewords as descriptor identifiers (except for standard ones (STDIN, STDOUT, STDERR))
  • Pseudo-multidimensional hashes in Perl 4 style.

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

  • Old-style prototypes in Perl 4. Now you need to write only like this:

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

    First, the prototype that affects the compilation of calls, followed by signatures that place arguments into the corresponding variables at runtime.

Nevertheless, there will still be an option to revert everything back wholesale:
use compat::perl5;
Or one at a time.

Perl 5.32 is entering long-term support mode for a duration of 5 years.

Expanded announcement by Brian D. Foy: https://www.perl.com/article/announcing-perl-7/
TL;DR version from him: http://blogs.perl.org/users/brian_d_foy/2020/06/the-perl-7-tldr.html

Source: linux.org.ru

Buy reliable website hosting with DDoS protection, VPS VDS servers 🔥 Buy reliable website hosting with DDoS protection, VPS VDS servers | ProHoster