Dar vieno analitiko svetainė

Petras Kudaras

Perlo objektai: antra dalis

Pagalvojimai apie ateitį: geresni konstruktoriai Nors šiuo metu dar gal ir nežinote kas yra paveldimumas, bet kažkada ateityje matyt teks su tuo susidurti. Tam, kad paveldimumas veiktų kaip turėtų, reikia naudoti bless() sudviem argumentais. Antruoju argumentu yra perduodama klasė, į kurią bus „palaiminama“. Tuo pačiu padarysime konstruktorių lankstesnį, kad būtų jį galima iškviesti tiek kaip klasės, tiek kaip ir objekto metodą. T.y. kad būtų galima rašyti: $as = Asmuo->naujas(); $ji = $as->naujas(); Viskas ką mums reikia padaryti, tai patikrinti ar į konstruktorių buvo perduota nuoroda (reference) ar ne. Skaityti toliau…

Darbo skelbimas

Vat prisireikė man programerio(ės), kuri(s) mokėtų HTML, CSS, bent jau šiek tiek kirstų PHP ir/ar Perl (na, bent vieną iš šitų ;) Darbas puse etato, Vilniuje, ofise, lanksčios darbo valandos. Atlyginimas 400 Lt, tad ieškau pradedančių studenčiokų ar panašiai.

Perlo Advento kalendorius

Kaip ir pernai metais, Mark Fowler sudarė perlinį advento kaledorių, kuris kiekvieną dieną iki Kalėdų pasakos apie vis naują Perlo modulį ir aiškins kaip jsuo naudotis. Kalendorių galima rasti adresu http://www.perladvent.org/2003/

Perlo objektų pradžiamokslis: pirmoji dalis

Objekto vaizdavimas Dažniausiai Perle Paskalio įrašas arba C struktūra, arba C+ klasė yra saugoma anoniminio asociatyvaus masyvo (hešo) pavidalu. Taip saugoti yra patogu, nes heše galima saugoti neribotą kiekį elementų, kuriuos galima pasiekti per unikalų hešo raktą. Jeigu tik norite kažko panašaus į C struktūrą, tai galima daryti taip: $irasas = { vardas => "Petras", amzius => 21, kolegos => [ "Juozas", "Nikolajus", "Vaidas"], }; Jeigu norite lengviau perskaitomo kodo, galite hešo raktus Skaityti toliau…

Perlinio modulio pavyzdys

Vakar IRC buvau paklaustas, kaip yra daromi objektiniai Perlo moduliai. Parašiau ir paprastą moduliuką, kuris parodo kaip veikia visas Perlo objektiškumas. Štai modulis Modulis.pm: package Modulis; use strict; use warnings; sub naujas { bless {}; } sub vardas { my $self = shift; $_[0] ? $self->{'vardas'} = $_[0] : $self->{'vardas'}; } 1; Modulis prasideda paketo apibrėžimu (package Modulis;) bei aprašo dvi funkcijas (tiksliau vieną funkciją ir vieną metodą). Funkcija naujas sukuria ir grąžina naują objektą Modulis. Skaityti toliau…

ActivePerl build 807

Pasirodė populiaros Perlo distribucijos Windows platformai ActivePerl versija. Ši versija yra kurta 5.8.1 Perlo versijos pagrindu ir turi nemažai atnaujintų modulių. Patys didžiausi atnaujinti moduliai yra XML::Parser ir Archive::Tar. Visi ActivePerl vartotojai turbūt turėtų atsinaujinti Perlo versijas į šią naująją.

Šventasis moxliukas

Nagi šiandien tapau 236-uoju Perlmonks šventuoju. Tai vat. Pasigyriau.

Acme::Apache::Werewolf

Acme::Apache::Werewolf yra naujas ir labai naudingas Perlo modulis, kuris leidžia apsaugoti Apache serverio direktorijas nuo vilkolakių. io modulio pagalba galima uždrausti priėjimą prie Apache direktorijų mėnulio pilnaties metu, tereikia į httpd.conf įrašyti: <Directory /fullmoon> PerlAccessHandler Acme::Apache::Werewolf PerlSetVar MoonLength 4 </Directory> Tris kart valio CPAN, nes dabar mano Apachei nebaisūs jokie vilkolakiai.

Perl 5.6.2

Šeštadienį buvo išleista 5.6.2 Perlo versija. Perlo 5.6.x šaka nėra mirusi, ji vis dar palaikoma. Pagrindinis šios versijos tikslas buvo galimybė sukompiliuoti Perlą su naujais įrankiais (kaip kad gcc 3.3) ir operacinėmis sistemomis, kurios atsirado jau po Perl 5.6.1 išleidimo (AIX 5 ir Mac OS X). Tuo pačiu buvo atnaujinti ir kai kurie moduliai. Parsisiųsti 5.6.2 galima iš čia.

Num2LTWord Perlu

Kai kam prireikė funkcijos, kuri verstų skaičius į lietuvių kalbą. Tad parašiau Perlinį moduliuką – gal bus dar kam nors naudingas. (Parsiųsti kaip normalų modulį galima iš čia) #!/usr/bin/perl -w package Num2LTWord; =head1 Num2LTWord -- skaičiai lietuviškai Modulis verčiantis (sveikus) skaičius į lietuvių kalbą =head2 NAUDOJIMAS use Num2LTWord; num2ltword(2003); =head2 FUNKCIJOS =head3 num2ltword ( skaičius ) Ši funkcija grąžina suformuotą lietuvišką skaičiaus pavadinimą. =head2 RIKTAI IR APRIBOJIMAI Funkcija C<num2ltword> supranta tik sveikus skaičius intervale (- 1 000 000 000; 1 000 000 000) =head2 AUTORIUS Petras Kudaras aka moxliukas (moxliukas@delfi. Skaityti toliau…