Oznámený Perl 7

Včera večer na konferencii Perl a Raku v cloude, Sawyer X oznámil zmena hlavnej verzie Perlu z 5 na 7. Práce už prebiehajú, nová verzia vyjde do roka. Nemali by ste očakávať veľa zmien, v skratke: Perl 7 je stále rovnaký Perl 5.32 s modernými predvolenými nastaveniami. Už nemusíte explicitne uvádzať funkcie, ktoré už používate, budú vám povolené!

Čo bude zahrnuté?

Úplný zoznam zatiaľ neexistuje, ale určite prísne a varovania! V 7. vydaní zostanú podpisy s najväčšou pravdepodobnosťou experimentálne, nestihnú povoliť ani utf8.

Čo bude zakázané?

  • Nepriame volanie metódy:

    {;
    balíček Foo;

    pod nový { požehnanie {} }
    sub bar { print "Ahoj z baru()!n" x pop }
    }

    # Normálny hovor
    my $foo = Foo->new();
    # Nepriamy hovor
    bar $ foo 42;

  • Prázdne slová (holé slová) ako identifikátory deskriptora (okrem štandardných (STDIN, STDOUT, STDERR))
  • Pseudo viacrozmerné hash v štýle Perl 4.

    # príklady prevzaté z perldoc perlvar
    $foo{$x,$y,$z}
    # v skutočnosti znamená $foo{join($;, $x, $y, $z)}

  • Staré prototypy v štýle Perl 4. Teraz stačí napísať takto:

    sub foo :prototype($$) ($left, $right) {
    návrat $vľavo + $vpravo;
    }

    Najprv prototyp, ktorý ovplyvňuje kompiláciu volaní, a potom podpisy, ktoré za behu vkladajú argumenty do príslušných premenných.

Stále však bude možnosť vrátiť všetko späť hromadne:
použite compat::perl5;
Alebo jeden po druhom.

Perl 5.32 prechádza do dlhodobej podpory na 5 rokov alebo viac.

Rozšírené oznámenie od Briana D Foya: https://www.perl.com/article/announcing-perl-7/
TL;DR verzia od neho: http://blogs.perl.org/users/brian_d_foy/2020/06/the-perl-7-tldr.html

Zdroj: linux.org.ru

Pridať komentár