Dar vieno analitiko svetainė

Petras Kudaras

Įvadas į Perlą įvairiais formatais

Persirašiau savąjį įvadą į Perlą (perlintro vertimą) į POD formatą. POD formatas yra Perlo dalis, juo rašoma visa Perlo dokumentacija, tad nenuostabu kad egzistuoja daug visokių konvertavimo programėlių, kuriomis iš POD galima sukurti HTML, txt, LaTeX, man ir kitokių formatų dokumentus. tad dabar įvadą į Perlą lietuviškai galima parsisiųsti šiais formatais: POD, HTML, LaTeX, man ir txt.

Parrot ir Python lenktynės

Jau seniai buvo kalbėta, jog vienas pagrindinių Parrot kūrėjų (Parrot yra Perl6 virtualioji platforma) Dan Sugalski susilažino su Python kūrėju Guido van Rossum, kad Parrot baitkodas bus greitesnis už Pitono baitkodą (Į Parrot baitkodą bus galima kompiliuoti ne vien Perl, bet ir Python, Ruby, Smalltalk, Basic, ir ką tik nori). Atrodo, jog Dan nori sukurti tokią platformą, kuri laisvai galėtų konkuruoti tarp jau dabar egzistuojančių. Tiesą sakant jau dabar mano 120MHz Pentiume Parrot sugeba vykdyti apie 1-2 Skaityti toliau…

Įvadas į Perl: baigiamoji dalis: įpraiškos ir kita

Įpraiškos Perlas palaiko sudėtingą ir plačią įpraiškų sintaksę. Pilną jos aprašymą galima rasti perlrequick, perlretut ir kituose dokumentacijos skyriuose. Tačiau trumpai: Paprastas tikrinimas if (/foo/) { ... } # 'true' jei $_ yra simbolių seka 'foo' if($a =~ /foo/) { ... } # 'true' jei $a yra simbolių seka 'foo' Įpraiškų operatorius // aprašytas perlop dokumentacijoje. Jis pagal nutylėjimą įprašką taiko kintamajam $_, tačiau tai galima pakeisti, pasinaudojus operatoriumi =~ (kurio aprašymą irgi galima rasti perlop dokumentacijoje). Skaityti toliau…

HTML::Mason

Šiandien susidėjau į serverį HTML::Mason modulį, kurio pagalba galima rašytis Perlinius skriptus PHP stiliumi – t.y. tiesiai įterpiant juos į HTML kodą. Tiesa, viskas ne taip paprasta, kaip tik HTML::Mason turi daugiau visokių ypatybių ir gali būti naudojamas tiek šablonams (jei norima tik tokio funkcionalumo), tiek PHP stiliaus programavimui. Kiek pamenu Nightblade buvo pareiškęs, kad jis stengiasi nebenaudot šablonų, o tik nuosaikiai naudoja PHP kodą pačiame HTML. Tai atrodo jog HTML::Mason filosofija ir yra būtent tokia. Skaityti toliau…

Super pakaitalas phpDevServeriui

Beklaidžiojant po PerlMonksus užtikau nuorodą į vieną neblogą sprendimą Windows platformai. Tai web serveris su visais programavimui reikalingais dalykais. Nors idėja panaši į phpDevServer, bet filosofija radikaliai skirtinga – kai devserver stengėsi būti kuo mažesnis, šitas daiktas stengiasi būti kuo didesnis ;) Štai kas į jį įeina: Apache 2.0.46, MySQL 4.0.13, PHP 4.3.2 + PEAR, Perl 5.8.0, mod_php 4.3.2, mod_perl 1.99_10, mod_ssl 2.0.46, openssl 0.9.7b, PHPMyAdmin 2.5.1, Webalizer 2.01-10, Mercury Mail Transport System for Win32 and NetWare Systems Skaityti toliau…

Perlo skaitymo iš bylų būdai

Perlas leidžia nuskaityti duomenis iš bylų daugybe būdų, kai kurie ganėtinai bjaurūs ir nenaudotini. Štai kad ir šis, sutinkamas dažniausiai: { local $/ = undef; open FH, "<$byla"; $duomenys = <FH>; close FH; } Teigiamos pusės: visiems įprasta. Iš kart nuskaito duomenis iš bylos nenaudojant tarpinių masyvų. Neigiamos pusės: $duomenys negali būti leksinis kintamasis, aprašytas su my, nes specialiai reikia sukurti bloką tam kam lokalizuotume $/ Kitas dažnas pavyzdys: @ARGV = ($byla); my $duomenys = join '', <>; Teigiama: Trumpa ir aišku. Skaityti toliau…

Išleistas Perl 5.8.1 RC1

Atrodo, kad ką tik išleistas Perl 5.8.1 RC1. perldelta dokumentacijoje matosi keletas pakeitimų. Vienas svarbiausių pakeitimų yra asociatyviųjų masyvų atsitiktinės tvarkos pagerinimo algoritmas (ten BugTraq berods rašė jog galima padaryt DOS ataką prieš programą, nes kol kas dauguma asociatyviųjų masyvų ne visai atsitiktiniu būdu sudaro masyvo raktų eilę – sudėtingas tas bugas, tik žinau kad egzistuoja beveik visose kalbose ir programose ir kad gali dėl to gautis Denial of Service, nors atrodo tik teoriniam lygyje) Skaityti toliau…

Įvadas į Perl: trečioji dalis: operatoriai ir I/O

Operatoriai ir funkcijos Perlas turi daug standartinių funkcijų. kai kurias jau matėme šiame įvade (tokias kaip print, sort arba reverse). Pilnas funkcijų sąrašas yra perlfunc dokumentacijoje ir apie kurią nors funkciją lengva pasiskaityti konsolėje įvedus perldoc -f funkcijospavadinimas. Perlo operatoriai pilnai aprašyti perlop dokumentacijoje. Štai keletas dažniau sutinkamų: Aritmetiniai: + sudėtis - atimtis * daugyba / dalyba Matematinio palyginimo: == lygybės != nelygybės < mažiau negu > daugiau negu <= mažiau arba lygu >= daugiau arba lygu Simbolių eilučių palyginimo: Skaityti toliau…

Darbai, darbai…

Jau galvojau, kad baigsis Dainų šventė tai bus kada atsikvėpt. Pasirodo užgriūva nauji projektai, kurie beje susiję labiau su mano darbu (internetas, programavimas, adminavimas ir pan.) Per pastarąsias dienas baiginėju verst perlintro – nėra ten tiek daug, bet visi laiko neturi, tame tarpe ir aš pats, tad gaunasi viskas lėtai. Na tikiuosi ryt poryt papostint paskutines „įvado į Perl“ dalis.

Kas svarbiausia šablonų varikliams

Nuskaičiau šiandien PHP forume įdomią diskusiją apie tai kas svarbiausia PHP šablonų varikliuose (ačiū scooox už nuorodą). Labiausiai prieštaringų minčių man sukėlė citata O jei template nera svarbiausia greitis… tai kas tada svarbu? Navarotai? Jei taip – tada tu grybas. Tiesą sakant „navarotai“ yra labai svarbu. Ir turbūt svarbiausia (na, jei greitis nėra visiškai šliaužiantis). Gyvename tokiais laikais kai kompiuterio laikas yra pigus, o programuotojų laikas kainuoja brangiai, tad aš geriau rinkčiausi lėtesnę šablonų sistemą (na, ne tris kart lėtesnę, bet tarkim iki 50% lėtesnę) jei su ja man būtų žymiai lengviau programuoti. Skaityti toliau…