En ny version af Perl 5.32.0 programmeringssprogsfortolkeren er blevet frigivet.
Bag 13 måneders udvikling ændrede 140 tusind linjer i 880 filer.
Vigtigste innovationer:
- Ny eksperimentel er en operator, der kontrollerer, om det angivne objekt er en forekomst af den beståede klasse eller en efterkommerklasse:
if( $obj isa Package::Name ) { … }
- Support Unicode 13.0!
- Det er nu muligt at skrive sammenligningsoperatører med samme prioritet i form af en kæde:
if ( $x < $y <= $z ) {...}
Samme som:
if ( $x < $y && $y <= $z ) {…}
Du kan læse mere om denne funktion i perlop (afsnittet "Operatorpræference og associativitet").
- Bogstavnotationer for udsagn i regulære udtryk er ikke længere eksperimentelle. Eksempel: (*pla:mønster), flere detaljer i perlre.
- Muligheden for at begrænse det mønster, der kontrolleres, til et specifikt skrivesystem (mere om "Script Runs" i perlre) er ikke længere eksperimentel.
- Det er nu muligt at deaktivere indirekte metodekald. Du kan læse mere i en note af Brian D Foy.
Nogle optimeringer:
- Det er nu hurtigere at kontrollere tilslutningen af yderligere funktioner (funktioner).
- Særlige sager til sortering er blevet væsentligt fremskyndet (vi taler om {$a <=> $b} og {$b <=> $a} ).
Jeg valgte kun nogle få ting, der faldt i min smag. Der er andre innovationer, ændringer, der er uforenelige med tidligere versioner, dokumentationsopdateringer og lukkede sikkerhedsproblemer. Jeg foreslår, at du læser hele perldeltaen på linket.
Kilde: linux.org.ru