Sinoć na Perl i Raku konferenciji u oblaku, Sawyer X je najavio mijenjanje glavne verzije Perla sa 5 na 7. Radovi su već u toku, nova verzija će izaći u roku od godinu dana. Ukratko, ne biste trebali očekivati puno promjena: Perl 7 je i dalje isti Perl 5.32 sa modernim zadanim postavkama. Više ne morate eksplicitno uključivati funkcije koje već koristite, one će vam biti omogućene!
Šta će biti uključeno?
Još nema kompletne liste, ali strogo i upozorenja svakako! U 7. izdanju potpisi će najvjerovatnije ostati eksperimentalni, neće imati vremena ni da omoguće utf8.
Šta će biti onemogućeno?
- Indirektni poziv metode:
{;
paket Foo;sub new { blagoslovi {} }
sub bar { print "Zdravo iz bar()!n" x pop }
}# Normalan poziv
moj $foo = Foo->new();
# Indirektni poziv
bar $foo 42; - Prazne riječi (gole riječi) kao identifikatori deskriptora (osim standardnih (STDIN, STDOUT, STDERR))
- Pseudo višedimenzionalni hashovi u stilu Perl 4.
# primjera preuzeta iz perldoc perlvar
$foo{$x,$y,$z}
# zapravo znači $foo{join($;, $x, $y, $z)} - Stari prototipovi u stilu Perl 4. Sada samo trebate napisati ovako:
sub foo :prototype($$) ($lijevo, $desno) {
povratak $lijevo + $desno;
}Prvo, prototip koji utječe na kompilaciju poziva, a zatim potpise koji stavljaju argumente u odgovarajuće varijable u vrijeme izvođenja.
Međutim, i dalje će postojati prilika da se sve vrati na veliko:
koristite compat::perl5;
Ili jedan po jedan.
Perl 5.32 prelazi na dugoročnu podršku za 5 godina ili više.
Prošireno saopštenje Briana D Foya: https://www.perl.com/article/announcing-perl-7/
TL;DR verzija od njega: http://blogs.perl.org/users/brian_d_foy/2020/06/the-perl-7-tldr.html
izvor: linux.org.ru