Prijeđi na sadržaj

Perl

Izvor: Wikipedija

Perl je programski jezik opće namjene. Izvorni autor Perla je Larry Wall, a prva inačica pojavila se 18. prosinca 1987. godine. Perl vuče svoje korijene iz drugih jezika kao što su primjerice C, sed, awk i Unix shell. Perl je danas ne samo programski jezik već i vrlo aktivna zajednica programera i korisnika. Odlikuje ga kvalitetan repozitorij gotovih programskih rješenja (CPAN - kratica od eng. Comprehensive Perl Archive Network) što mu je ujedno i glavna prednost u odnosu na konkurentne jezike.

Prvotno ime jezika bilo je pearl, a Larry Wall ga je preimenovao u Perl nakon otkrića da već postoji jezik PEARL. Perl se često tumači (i u službenoj dokumentaciju) kao „Practical Extraction and Report Language”, premda nije pokrata.[1]

Odlike

[uredi | uredi kôd]

Perl je prema svojim odlikama objektno orijentiran programski jezik opće namjene s naglaskom na funkcionalnost, proširivost te laganu krivulju učenja. Perl je bio jezik izbora za razvoj WWW-ovih aplikacija sredinom 90-ih godina. Od samih svojih početaka to je jezik Unix-ovih i Linux-ovih sustavskih administratora koji ga koriste u svakodnevnom radu prvenstveno za automatizaciju procesa. Danas postoji i čitav niz korisničkih tržišnih aplikacija pisanih u Perlu.

Izvedbena okolina istovjetna je istoimenu prevoditelju koji ima dvostruku namjenu: prevođenje izvornog koda u međuoblik pogodan za neposredno izvođenje (eng. code compilation) te samo izvođenje koda (eng. code execution). Obje funkcije dostupne su u svakom trenutku, odnosno Perlova izvedbena okolina omogućava tvorenje novih Perlovih programa odnosno Perlovih funkcija tijekom samog izvođenja. Time je Perl blizak i funkcionalnim programskim jezicima kao što su Smalltalk i Haskell.

Trenutna inačica Perla koja je danas u širokoj uporabi (Perl 5) ipak sadrži previše već ponešto zastarjelih programerskih tehnika, a zbog željene potpune kompatibilnosti sa starijim inačicama iz 80-ih godina pati i od izvjesnih nedostataka. Naglasak je prije svega na korištenju gotovih dobro testiranih korisničkih biblioteka dostupnih preko već spomenute CPAN-ove arhive. Premda je Perl na glasu kao „kriptičan” jezik hackera, uz nešto profesionalne discipline te pridržavanja određenih pravila programiranja, moguće je pisati pregledne i uredne programe.

Sintaksa

[uredi | uredi kôd]

Sintaksa Perla vuče svoje korijene iz C jezika, i mnogo konstrukti (petlje, uvjeti) iz C jezika se mogu slično napisati u Perlu.

Varijable

[uredi | uredi kôd]

U Perlu nije nužno deklarirati varijable prije njihove uporabe, premda se to preporučuje.[2] Tipovi varijabli dinamički se određuju tijekom izvršavanja programa.

Primjer:

U Pascalu je nužno definirati varijable (kao i njihov tip) prije uporabe, za mijenjanje tipa varijable koristimo funkcije npr. IntToStr() i StrToInt() koje nam vraćaju nove varijable.

Pascal

var
i: Integer;
s: String;

begin
   s:='0';
   i:=StrToInt(s);
   i:=i+1;
   s:=IntToStr(i);
   WriteLn(fFileName,s+' je jedan');
end

Perl

my $s = '0';
print "s = $s\n";
$s = $s + 1;
print "s = $s\n";

Ispis pri izvedbi:

s = 0
s = 1

U gornjem primjeru vidimo da je Perl kod bitno kraći, nema deklaracije varijabli, a tip varijabli se određuje dinamički (ako se koristi operator +, a sadržaj varijable je numerički, interpreter izvršava operaciju sumiranja bez obzira na to što je varijabla $s inicijalno definirana kao string.

Perl 6

[uredi | uredi kôd]

Razvoj Perla dobio je novi zamah početkom 2001. godine kada je skupina programera okupljena oko Larrya odlučila pokrenuti novu inačicu pod nazivom Perl 6. Ta je nova inačica po svojim odlikama primjer programskog jezika za 21. stoljeće koji ujedinjava sva dobra svojstva modernih programskih jezika koristeći se novom (i nekompatibilnom s aktualnom inačicom) sintaksom i semantikom.[3] Perl 6 će po svojoj arhitekturi biti donekle sličan .NET-ovim i Javinim okolinama s jednom bitnom razlikom: izvedbena okolina će umjesto stogovne tehnike koristiti tehniku virtualnog procesora. Time se Larry i zajednica nadaju bržem izvođenju programa i mogućnosti korištenja dobro poznatih i razrađenih metoda optimizacije prevođenja izvornog koda.

Perl 6 još nije dostupan, ali pojedini njegovi dijelovi su već daleko uznapredovali u razvoju. Perl 6 izvedbena okolina poznata pod nazivom Parrot također će omogućiti izvođenje programa pisanih u srodnim jezicima kao što su Python i Ruby. Perl 6 je po svim svojim značajkama potpuno novi programski jezik i izvedbena okolina te jedan od najvećih aktivnih pothvata u slobodnu pristupu koji okuplja veliki broj programera. Perl 6 je, prema riječima samog Larrya, potpuna obnova Perla i zajednice programera i korisnika.[nedostaje izvor]

Od 2008. godine, jedna od implementacija Perl 6 jezika je i Rakudo[4] koja se pokreće na Parrot okolini i koju aktivno razvija zajednica Perla 6. Rakudo, od prosinca 2008. godine, prolazi testiranje za preko 50 % specifikacija jezika Perl 6.[5]

Vanjske poveznice

[uredi | uredi kôd]

Izvori

[uredi | uredi kôd]
  1. "What's the difference between 'perl' and 'Perl'?"
  2. "perlintro: safety-net
  3. "Perl6 Architecture". Inačica izvorne stranice arhivirana 22. siječnja 2009. Pristupljeno 16. prosinca 2008.
  4. "The compiler formerly known as 'perl6'". Inačica izvorne stranice arhivirana 23. prosinca 2008. Pristupljeno 16. prosinca 2008. journal zahtijeva |journal= (pomoć)
  5. "Rakudo now passing over 5,000 spectests". Inačica izvorne stranice arhivirana 16. prosinca 2008. Pristupljeno 16. prosinca 2008. journal zahtijeva |journal= (pomoć)