Perlo gimtadienis
Pagal perldoc perlhist šiandien yra 16-asis perlo gimtadienis. Šia gimtadienio proga Richard Clamp nubraukė dulkes nuo senojo perlo ir išleido 1.0_16 versiją (su pataisymais, kad kompiliuotųsi ant gcc 3.3)
Perl Oksfordo žodyne
Dar viena naujiena iš Perl pasaulio svetainėje http://use.perl.org: žodis „Perl“ įtrauktas į Oksfordo anglų kalbos žodyną. Įraše sakoma, jog nereiktų rašyti PERL, kad Perl yra kalbos pavadinimas, o perl – interpretatoriaus, kad pirmą kartą žodis oficialiai panaudotas Larry Wall Usenet žinutėje 1987 metų gegužės 13 dieną.
Perthon
Va ką šiandien užtikau: Posted today on PerlMonks was an interesting tool. Eventually, I hope you Python monkeys will come to your senses and turn to Perl for sanity. To ease such transition, see the Perthon project: /http://perthon.sourceforge.net Now, your Python code can be reborn as the Perl it always should have been. Komentarų turbūt nereikia ;-) Šiaip įdomus projektukas (bet kaip ir dauguma kalbų vertėjų turbūt nelabai pritaikomas praktikoje)
EnC su nauju weblogu
Štai EnC perkrausčiau ant mano weblogo kodo. Tikėjausi, kad bus sudėtingiau, nes kai rašiau tai labai daug ką hardkodinau ir visai nemąsčiau kad galbūt tas kodas bus naudojamas dar kam nors kitam. Realiai EnC prisitaikė savo reikmėm per kokią valandą viską (na… taisė šablonus šiek tiek ir ieškojo hardkodintų dalykų, kuriuos reikia pakeisti). Kol kas dar pas jį ne viskas veikia (su CSS tikra makalynė ir man atrodo kad JavaScript jis kažkur nukišo taip kad jis neveikia). Skaityti toliau…
Pirma diena kaip šefas
Štai šiandien mano pavaldiniu tapo EnC. Kol kas dar nepradėjau jo versti programuoti Perlu, bet aišku tai mano planuose. Nors visgi pirmas skriptas kurį jis parašė (mano paprašytas ir man diktuojant) buvo perlinis. Daviau visus priėjimus prie mano mieliausio serverio su visais mod_perl ir mod_ruby, HTML::Mason ir PLP (na ir PHP…). Kaip draugui kompiuterastui negalinčiam be IRC pasakiau tą slaptąjį portą per kurį galima pasiekti delfi serverį (mirtingiesiems pas mus IRC uždraustas). Skaityti toliau…
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…