Na řadu věcí nic lepšího prostě není.
Pokud potřebuji přechroustat nějakou pomrvenou tabulku k "sežrání" R-kem, nebo pro to R-ko "předžvýkat" data tak, abych si neumlátil prsty a nezešílel v jeho syntaktických nelogičnostech a záludnostech, tak je perl první volbou.
A když jsme u toho, tak není problém v tom perlu napsat jako grafický výstup sled příkazů pro vygenerování obrázku metapostem nebo ImageMagickem (a určitě by šlo zvládnout i SVG, kdybych ho uměl).
Něco podobného sice s jinými programy jde taky, ale perl je specializovaný nástroj pro přechroustávání textových souborů, takže v něm tyhle věci jdou prostě líp.
Syntaxe objektů, které mají zachytávat reakce uživatele, je naprosto nesmyslná a nelogická (alespoň z mého pohledu). Nikde není vysvětleno, co to dělá a co jednotlivé prvky syntaxe znamenají (a proč to po, z hlediska člověka odchovaného procedurálním programováním nepatrných, změnách přestane fungovat). Mám-li formulář s větším počtem podobných či stejných objektů, musím to vše otrocky opisovat, zatímco v perlu nebo podobném jazyce bych to, co mají identické, tahal z nějakého podprogramu, což v Pythonu prostě nejde (minimálně tomu vadí lokálnost proměnných v objektech a pokud se to nějak obchází, je příslušný kód ještě delší a složitější /a nepřehlednější/). Plus řada podobných věcí.
Dnes bych asi řešil tenhle problém tím, že bych si ty pythonovské objekty nechal vypsat perlem (jak to běžně dělám u grafických objektů generovaných metapostem nebo ImageMagickem).
Je vážně těžké pro to co popisujete najít mnoho důvodů proč nezvolit Python, případně pandas. perl, metapost a imagemagick mi připomíná cestu o 10 let zpět. Industry mé tvrzení dost potvrzuje (kolik tutoriálů, knihoven, OSS, webů, komerečních řešení atp. je napsáno pomocí pandas+python a kolik metapost|imagemagick+perl).
Klidně si to používejte, ale "nic lepšího prostě není" je simply false (resp. Occam). asi jste chtěl napsat "nic lepšího neumím nebo neznám", což je ok.
Je mi líto, ale na věci, které běžně dělám a dělat potřebuji, je ten perl opravdu nejlepší. Srovnáno s BASICem, pythonem, javou. Protože používám TeX, tak mi vyhovuje jazyk metapostu (a to, že obrázky, které z něho lezou, jsou s TeXem kompatibilní). U toho ImageMagicku jde hlavně o to, že složitější skripty, třeba zaškrtávací formulář na testy, se v něm celkem dobře dělají tak, že je vygeneruje perl.
Vyzeralo to ako modernejsi pristup, ale teraz mi to uz ako moc velka vyhoda nepripada. Po negativnych skusenostiach (Space-Tab Hell) by som bol radsej keby Python mal namiesto povinneho odsadzovania napr. ukoncovanie blokov s END ako to ma Ruby. Aj tak kazdy normalny programator v kode odsadzuje - aj v jazykoch kde to nie je povinne.
Ale inac mam Python rad.
Já jsem Python taky používal (hlavně ke tvorbě interface na vyplňování dotazníků v grafickém prostředí, čili různá zaškrtávací políčka, radiobutons atd. s tím, že výsledek program vyplivl ve formátu DOSovského EpiInfa). Vadila mi dost velká ukecanost, nelogičnost syntaxe obsluhy těch grafických objektů a podobné věci, nicméně tohle bych asi v perlu nepsal (asi bych to dnes psal v javascriptu).
Nicméně perl je nepřekonatelný svou schopností analyzovat a zpracovávat údaje v textovém formátu. Podařilo se mi v něm napsat i jednoduché filtry pro práci s obrázky (třeba detekující smítko na skenovaném obrázku a vyplňující jeho plochu průměrem barvy před a po kazu na řádku), ale to už je "znásilňování" tohoto jazyka proti jeho přirozenosti a účelu, za jakým byl sepsán.
Pochopitelně, nedělám nějaké superprojekty, ale skripty na pár desítek řádků, a na to je asi nepřekonatelný. Docela chápu, že nějaké velké projekty (případně operační systém) by se v tom psaly asi docela špatně, ale takové ambice nemám. Proto taky ne zcela akceptuji Satrapovo varování v "Perlu pro zelenáče", že to není vhodný jazyk pro začátečníky. Mám trochu jiný názor: Pokud by dotyčný měl ambice dělat velké projekty (a hlavně v týmu), tak by se asi měl programování naučit na nějakém jiném jazyku. Pokud ale tyto ambice nemá (já jako lékař vyučující na VŠ, pár let před důchodem rozhodně takové ambice nemám), tak neexistuje důvod proč nezačít programování právě s perlem - není v tomto ohledu horší než výše zmíněný BASIC, na kterém vyrostla celá generace programátorů.