Den Perl programmeringsspråk har varit i ständig utveckling sedan den första utgåvan 1987 . Varje ny release tillför ytterligare funktioner , buggar fixar och uttolkare prestandaförbättringar . Vissa förändringar , men menar att skript skrivna för äldre versioner kanske inte längre fungerar som avsett . Trots de rättelser och ändringar syntaxen som introducerades i övergången från Perl 5.8.8 till version 5.10 föra också språket närmare till nästa stora release: Perl 6 . Prestanda
Liksom tidigare Perl releaser , förbättrar version 5.10 av prestanda och effektivitet av språkets manus tolk . Perl : s inbyggda quicksort funktioner Sortera och omvänt sort inte längre slösa tid och minne att göra tillfälliga kopior av array som ska sorteras . Det sätt Perl tolk bearbetar reguljära uttryck har omarbetats liksom , öka hastigheten och eliminera stackspill. Addera Förbättringar av
Perl binärer och bibliotek är nu relocatable . Du kan installera Perl på alla system bilresa i någon katalog . Nu kan du skapa paket bunt din Perl program med motsvarande version av tolk som kan installeras på en enhet som helst på målsystemet .
Tillståndsvariabler är en annan kärna förstärkning till Perl . Staten nyckelordet låter funktion variabler att behålla sina värden mellan funktionsanrop medan återstående osynligt utanför funktionens omfattning . Smart Match operatör " ~ ~ " tillåter dig att göra jämförelser av strängar , arrayer och hashar på ett sätt som tidigare varit möjligt endast med reguljära uttryck .
Inkompatibiliteter
Tyvärr har vissa förändringar i Perl 5.10 bryta kompatibilitet med äldre versioner . Perl 5.8.8 skript med pack ( ) och packa ( ) på UTF - 8 eller Universal Character Set Transformation Format - 8 - bitars inte kommer att fungera korrekt med Perl 5.10 UTF-8- strängar . Det vanliga uttrycket variablerna $ * och $ # har tagits bort . Operatören " chdir " är nu ett Perl bareword som returnerar en fil handtag snarare än ett filnamn . Printf ( ) och sprint ( ) följer nu med bismak läget direktivet .
Du kan prova några nya Perl funktioner utan att bryta kompatibilitet med äldre versioner genom att använda den nya funktionen pragma eller tolk direktivet . Funktionen pragma låter dig använda skriva kod som använder vissa nya språkliga funktioner som säger ( ) funktionen eller switch endast om du uttryckligen begär dem .
Buggfixar
Några av de ökningar i Perl 5.10 hastighet och stabilitet beror på buggfixar . Version 5.10 fixar minnesläckor orsakade av Perl processtrådar och funktionen eval . Den slumpgenerator inte längre ser för " urandom " fil på Windows implementationer . Studien ( ) funktionen för att påskynda reguljära uttryck inte längre utför någon åtgärd på UTF-8- strängar . Den " inga varningar " pragma nu korrekt arbetar med " - w " alternativet , där du kan välja vilka varningar du vill stänga av . Addera