Hát itt is van:
print "Helló világ!\n";
És utána itt van az eredmény is:
Helló világ!
Persze ez nagyon egyszerű. A print beépített parancs kiírja az
argumentumait a szabványos kimenetre. Aki programozott C-ben, annak ismerős lehet
a \n karakter is, amelyik egy sort emel (újsor karakter).
Félre a tréfával!
Nézzünk valami komolyabbat!
$a = 123;
$b = 55;
$c = $a + $b;
$d = "kakukk\n";
$d = 'kakukk\n' if $c == 178;
if( $d eq "kakukk\n" ){
print "Helló világ!\n";
}else{ print "Ma nincs jó napod!\n" }
Itt mindjárt látunk is valamit. Például azt, hogy minden egyes
változó neve előtt van egy dollár $ jel. Így nincs gond
azzal, hogy egy név lefoglalt változó-e, vagy sem. Így lehet használni nyugodtan
mindenféle változót, így akár a következőket is:
$if $else $return $unless $while $or $and
Ezek egyébként mind lefoglalt szavak lennének, ha lenne ilyen fogalom
a Perl nyelvben.
Az első három sor nem érdekes. A negyedik egy string értékadás, amelyik a $d változónak ad egy string értéket. Ez a string a k a k u k k karakterek és egy újsor karakter. A következő sorban levő utasítás először megvizsgálja, hogy a $c változó értéke 178-e. Rövid fejszámolás után kideríthetjük, hogy igen, bár az ilyen műveletek elvégzésére még a Perl is jobb nálam. A $d itt tehát új értéket kap. Ez az új érték azonban nem egyezik meg azzal, amit az előbb kapott (ennek nem is lenne semmi értelme, még egy ilyen tanmesében sem). Az új érték a k a k u k k \ n karakterek, azaz nyolc karakter. Mitől? Miért fordított törtvonal, és n karakter van a füzér végén, és miért nem újsor karakter?
A magyarázat az idézőjelek helyett használt aposztrófokban rejlik.
Ha idézőjelet használunk, akkor a Perl értelmezi a stringet, az escape karaktereket éppen úgy, mint például a füzérben előforduló változókat (miket??? türelem!). Ha azonban aposztrófokat használunk, akkor mindez nem történik meg, a füzér úgy van, ahogy leírtuk, se több, se kevesebb. Na, haladjunk tovább.
Ezek után már senkit sem lep meg, hogy amit kiír a program, az nem az előző "Hello világ!",
hanem az, hogy
Ma nincs jó napod!
ami ugye nem igaz, mert máris rengeteg érdekes dolgot tanultál meg a Perl nyelvről. Ha részletesebben
is érdekel a dolog, akkor visszamehetsz a nyitó oldalra, vagy innen is továbbléphetsz
és olvashatsz a Perl változókról, a különböző
program szerkezetekről vagy a stringekről,
hogy csak néhányat említsünk azok közül, amik ebben az ízelítőben előjöttek.