WarLUG: Nowoczesny Perl
- Dodano: 20 lutego 2009
- Wprowadził: t.klicki
- Komentarze: 43
Na najbliższym spotkaniu WarLUG-a grupa Warszawa.PM opowie nam o nowoczesnym programowaniu w języku Perl. Opowiadać będą Zbigniew Łukasiak i Piotr Roszatycki.
Termin i miejsce:
Budynek Wydziału MiMUW, sala 4070, ul. Banacha 2. Środa, 25.02.2009, godz. 18:15
Prelegenci:
Zbigniew Łukasiak i Piotr Roszatycki
Poziom:
średniozaawansowany
Streszczenie:
Cytuję za prelegentami: „Zrobimy przegląd, zupełnie arbitralnie wybranych, nowych projektów i trendów w Perlu: Perl 5.10, Moose, Catalyst, DBIC a nawet Perl 6, wspomnimy o tych konkurencyjnych – których nie używamy i przez to mało o nich wiemy: Beaver, Jifty, Rose. Opowiemy także o tym jak działa perlowy ‘ekosystem’ i dlaczego warto przyłączyć się do ‘perlowej społeczności’. Będzie trochę propagandy – ale bez przesady”.
Szczegółowe informacje na stronie: WarLUG.
–
Tomasz Klicki
Więcej informacji: http://warszawa.linux.org.pl
Znalazłeś literówkę? Zgłoś ją używając formularza!
Jeśli uważasz, że ten nius jest nieobiektywny, przedstawia nieprawdziwe wydarzenie, jest spamem lub nie spełnia standardów serwisu, napisz raport.
Niusy na podobny temat:
Komentarze są prywatnymi opiniami dodających je osób. Prosimy o zachowanie kultury wypowiedzi. Komentarze obraźliwe oraz obniżające poziom serwisu będą usuwane. Więcej w regulaminie komentowania.
43 komentarzy
Wszystkie autorskie niusy w serwisie publikowane są na licencji Creative Commons Uznanie autorstwa 2.5 Polska.


Czy Perl w Europie i w Polsce jest popularny? Z tego co widzę, to jest to język stosowany głównie w USA. Źle widzę?
Źle widzisz, miałem (mam) okazję pracować jako programista w dwóch dużych firmach w Polsce, i perl był tam bardzo popularny do pisania tooli (tych mniej i tych bardziej oficjalnych). Praktycznie do tooli nie używa się niczego innego (zresztą jest jakikolwiek wybór? może Python lub Rubby, ale tego prawie nikt nie zna…).
Prawie nikt nie zna Pythona? Znam sporo osób które zajmują się programowaniem w Pythonie… no ale muszę się zgodzić, bo też uważam liczba osób znających Pythona jest skończona
.
Być może, ale wśród studentów lub ludzi zaraz po studiach, wśród starszych roczników (choćby o kilka lat) wydaje mi się, że Perl jest znacznie popularniejszy. Co do ofert pracy jeśli chodzi o większe projekty jestem wstanie uwierzyć, że inne języki mogą stać się popularne. Jeśli chodzi o małe tooliki maksimum kilkaset/kilka tysięcy lini perl jest znacznie wygodniejszy i na pewno bardziej popularny. Sam znam kolesia, który wymiata skrypty w TCL/TK tylko jakoś wszyscy patrzą na niego z politowaniem.
IMO Python jest wtedy też sporo wygodniejszy. ICMPTZ?
Wymuszony styl wcięć, w praktyce konieczność programowania obiektowego, brak średników na końcu, problemy z kopiowaniem kodu. Tak python jest cholernie wygodny :/
Co jest nie tak z wymuszonym stylem wciec?
@PxxLT: Wymieniłeś akurat jedne z milszych zaler programowania w Py (pomijam te rzekome problemy z kopiowaniem kodu – cokolwiek masz na myśli). Tak btw, to preferuję Ruby (żeby nie było, że agituję za Pythonem).
Jeśli spojrzymy na oferty pracy, to wg moich oczu numero uno jest Python, duo – Ruby, tre – Perl. A jak dawno temu patrzyłem na oferty pracy w USA (portal bodajże Dice.com), to na pierwszym miejscu był Practical Extraction and Report Language.
Niewiem gdzie przegladasz te oferty pracy. Wg pracuj.pl sytuacja wyglada tak(nawiasy ilosc ofert):
1) JAVA(210);
2) php(98)
3) c++(126)
4) .NET(75)
5) perl(70)
6) python(20)
7) delphi(15)
ruby(6)
osobna kategoria) AJAX/JavaScript(68) – ponieważ nie samym JS'em czlowiek zyje. Wymagana jest najczesciej umiejetnosc programowania server-side, najczesciej w php.
aha zapomnialem o Flash'u(38)
Nowoczesny PERL to RUBY
Po co stosować PERLa jak łatwiej i przyjemniej pisze się w Rubym albo Pythonie? PERL to już zaszłość i nawet już wiele narzędzi systemowych w Linuksie jest pisanych w pythonie albo rubym.
Sam jesteś zaszłość! Perl to najlepszy język, dający najwięcej możliwości wyboru i tyle.
Perl rlz forever!
Muszę bronić swojego ulubionego języka
Jeżeli to nie ironia to nie wiem co powiedzieć.
'ten język jest najlepszy bo go znam!', i pewnie nic więcej. Perl nie ma nawet 1/10 możliwości Common Lispu tak dla przykładu. Inna sprawa – Ruby posiada wszystkie elementy Perla + masę dodatków, w składni podobnej do Eiffla, ma odpowiednik CPAN-a… Swoją drogą kiedyś strony internetowe (a raczej kod po stronie serwera) tworzyło się w Perlu, nie PHP, Pythonie czy Ruby.
Perl 5 (o ile mnie pamięć nie myli) istnieje od około 15 lat, przez ten czas zaszły w nim niezbyt wielkie zmiany, na stabilną wersję Perla 6 zaś czeka się jak na premierę Duke Nukem Forever. Fakt faktem, Perl pozostaje jednym z najlepszych języków do szybkiego pisania prostych skryptów administracyjnych.
Wiem jak łatwo powiedzieć, że coś jest najlepsze jeżeli nie zna się alternatyw. Proponuję zainteresowanie się historią języków programowania oraz poznanie tak z kilkunastu języków (każdy język to inne podejście, co poszerza perspektywę) aby wypowiadać się na podobne tematy.
Ucząc się i pracując opanowuje się (przede wszystkim dla siebie!) 1-3 języki rocznie… Prawda jest taka, że programistą nie jest się znając jakiś język programowania, jest się nim potrafiąc programować. Znajomość wielu języków zapewnia elastyczność (wybiera się najbardziej odpowiedni do danego zadania) oraz pozwala spojrzeć na wiele rzeczy w całkiem inny sposób, dla większości tutaj nie istnieje nic poza strukturalną, bądź posiadającą aspekty obiektowości, imperatywnością. Z perspektywy czasu mogę powiedzieć jedno – to (ograniczenie) zaślepia.
Znam php, perl'a, ruby'ego i pythona. Php: zaczynał jako moduł perl'a, sama nazwa mówi o jego przeznaczeniu: personal home page. Dość toporny, za to prosty. Python: anty-perl. Praktycznie przeciwieństwo, odrzucenie podstawowych założeń perl'a, takich jak Tim today. Schludny, ascetyczny wręcz, narzuca jedyny słuszny styl programowania. Co kto lubi. Ruby: perl++, programuje się w nim podobnie jak w perl'u, taki perl z kilkoma modułami i fajnym pomysłem na obiekty. Rubygems nie umywa się nawet do CPAN'a. Może za kilka lat?
Per 5 ciągle się rozwija. Obecna wersja, 5.10 dodała sporo nowych funkcji, takich jak case. Dodatkowo, na CPAN'ie cały czas pojawiają się znakomite moduły zmieniające perl'a nie do poznania: Moose, poe…
Strony internetowe dalej tworzy się w perl'u: Catalyst, CGI::Application, Movabletype(wykorzystany ostatnio przez sztab Obamy;)), Jifty.
Perl jest inny. Ma własny świat, ma CPAN'a, Test::More, Moose. Mówienie o tym, że umiera nie ma sensu. Żyje i ma się dobrze. A rakudo ma być już w tym roku.
A to z tego powodu, że Perl – jak vi – jest wszędzie. W firmie (w której pracujesz, czy dla której pracuje Twoja firma) instalacja czegokolwiek jest albo utrudniona, albo wręcz zakazana. Perl'a dostajesz "w zestawie" z każdym praktycznie *nixowpodobnym OSem. Co z tego, że np. nie możesz zainstalować niezbędnych modułów, albo nie ma ich na platforme którą potrzebujesz… jakiś szkielet Perla zawsze jest. Nie żebym to popierał, ale tak jest. I Perla w dodatku sporo ludzi zna (w najróżniejszym stopniu) stąd wiele kodu (najrózniejszego) powstaje w Perlu a podstawy Perla łatwo złapać.
Nie muszę się z tego cieszyć, ale realia są jak wyżej.
Co do Ruby'ego – jaki by nie był, spóźnił się. Perl ma swoją niszę, PHP okopało się i "is here to stay 4 ever" Python pełza ( :] ) pomiędzy tymi… dla Ruby'ego nie ma miejsca w mainstreamie języków skryptowych/dynamicznych… "more than three is always a crowd". I nawet niewłaściwa litera na poczatku
Ja generalnie wiekszosc rzeczy jakie tylko mozna napisac staram sie pisac w bashu – bash – jakby nie patrzec – jest wszedzie – nawet juz w solarisie.
Jak juz wiem, ze musialbym zrobic skrypt na 9-11 tys linii kodu w bashu – biore sie za perla.
@tarabaz: Nie wiem, czy w Solarisie bash instaluje sie domyslnie. Na pewno nie instaluje sie na masie innych systemow, w rodzaju HP-UX-a czy wszelkich BSD. Poza tym, jesli nawet bash jest, to pozostale narzedzia moga zachowywac sie inaczej.
Perl nadal jest używany. Ja go muszę stosować w pracy (głównie do pisania tooli), lecz cala masa softu napisanego w perlu nadal jest w branży IT i ktoś się musi nim zajmować (proszę bez trollowania o tym, żeby przepisywać wszystko na Ruby/Python).
Ale nowoczesne programowanie w Perlu ??? Bez przesady …
Przepisywac nie ma sensu, bo jesli dziala to po co ? Conajwyzej soft nalezy zmodernizowac, dodajac pare funkcji
jak eksport do xlsx np
W USA programisci PERL i calkiem niezle zarabiaja i jest na nich calkiem duze zapotrzebowanie. Osobiscie tez uwazam ze nowoczesny PERL to Ruby lub Python, to juz kwestia upodoban albo wyboru tego czy chcemy tworzyc narzedzia powiazane z systemem (python), czy z aplikacjami www (ruby, merb/rails/sinatra/rack). Sam PERL powoli przechodzi do historii, z ciekawszych informacji mozna wyciagnac chyba np odejscie glownego maintainera PERL 6 z projektu oraz porzucenie przez O'relly opieki nad http://www.perl.com aczkolwiek moze obie informacje to tyko jakis FUD, jesli tak niech ktos mnie poprawi
Nowoczesny perl to perl:) O odejściu owego głównego maintainera z rakudo jakoś nie słyszałem, a odnośnie perl.com, to chromatic odszedł z O’relly.
Parrot i rakudo rozwijają się bardzo dynamicznie, wystarczy śledzić planet perl6.
Pozwól, że posłużę się analogią:
Cobolu
finansowejankowejekonomicznejwtf
Jedyna różnica jest taka, że w Perlu tworzy się więcej nowego softu niż w Cobolu. Fakt faktem Cobol jest praktycznie martwy, został wyparty przez lepsze rozwiązania (a także ze względu na składnię, składni Perla też nikt za seksowną nie uważa, ale to tak BTW) – niemal cała gałąź branży IT powiązana z Cobolem zajmuje się legacy code.
W praktycznie każdym języku da się programować 'nowocześnie'…
PS faktycznie przydałby się podgląd komentarzy. L
Może w Polsce mniej, ale na świecie Perl jest nadal popularny. To nie jest taki stary język jak wyżej komentujący chcieli by aby był, powiedziałbym raczej, że Perl jest dojrzałym językiem.Przecież nie tak dawno wyszedł perl 5.10, a rozwijany jest Perl 6, więc stwierdzenie, że przechodzi do historii jest grubo przesadzone.
Ja osobiście bardzo lubię Perla. Próbowałem też Pythona i Ruby, ale ulubiony język skryptowy może być tylko jeden i w moim przypadku jest nim Perl
Perl jest moim ulubionym językiem. Jego składnia jest dość ekscentryczna, ale kiedy się już do niej przyzwyczai jest ok. No i CPAN. Żaden inny język nie ma tak ogromnego i łatwo dostępnego zbioru bibliotek. Bolączką jest jedynie dość archaiczne programowanie obiektowe. Widać, że obiektowość jest dodana jakby troszkę na siłę. Moose troszkę poprawia sytuację, ale do prostoty ruby'ego dużo mu brakuje. Na szczęście rakudo jest coraz bliższy:) Mam nadzieję, że perl znów będzie trendy;) Popularny jest od zawsze, ale ostatnio modny zrobił się python i ruby. Poczytajcie o parrot. Ludzie rozwijający perl'a odwalili na prawdę kawał dobrej roboty. O ile dzisiaj mówienie o językach skryptowych jest mało sensowne, to po pojawieniu się parrot będzie zupełnym absurdem.
Parrot pojawi się i przyjmie się tak samo, jak HURD, IPv6 i następcy SMTP, tudzież multithreading w CPythonie
> Parrot pojawi się i przyjmie się tak samo, jak HURD, IPv6
Zdziwisz się za parę lat kiedy zostaniesz w dupie ze swoim smętnym IPv4 za siedmioma NAT-ami, a świat pójdzie do przodu i nie będzie się zbytnio martwił o Twoją jaskinię. Zorientowałbyś się trochę w temacie zamiast mamlać językiem.
@Ja: Poki co temat wyglada tak, ze wszyscy IPv6 olewaja.
Nie wszyscy — śledzisz polski IPv6 Task Force?
http://tiny.pl/bqkd http://tiny.pl/bqkw
Przejżyjcie sobie materiały z ostatniego PLNOG. Faktem jest, że IPv6 jest olewane przez wszystkich, którzy stanowią warunek konieczny jego odpalenia, czyli głównych dostawców. Zainteresowani są mniejsi operatorzy, głównie ze względu na potrzeby uzyskania większych zakresów PI (które to obecnie nie są jeszcze przyznawane podmiotom nie mającym statusu LIR-a).
Widzę, że to, że nie mogę przyjechać nie jest przeszkodą, bo będzie icecast na żywo.
Pierwszy komentarz na temat, a jak daleko pod innymi…
@tadzik_: Niekoniecznie. Zacząłem dyskusję o sensowności szkolenia z Perla i ta dyskusja jest pod informacją o szkoleniu właśnie z Perla.
Powinna być jakaś blokada flamewarów na osnews. Do niczego to nie prowadzi.
Taka "blokada flamewarów" jest, i jest nią tzw. "Zdrowy rozsądek"
Perl to przede wszystkim totalny bajzel w składni i kod który jest czytelny tylko dla jego autora (w większości przypadków i optymistycznie zakładając, że autor wciąż pracuje w danej firmie).
Społeczność Perla powinna pomyśleć o tym jak elegancko wyrzucić część składni a nie jakie nowe rzeczy dodawać. Śmiem twierdzić że skoro przez tyle lat takie podejście było obce to i teraz tak będzie, że wszyscy ucieszą się z nowej składni i że to będzie kolejny gwóźdź do trumny dla tego języka.
Taak, wyrzuć trochę składni, dodaj trochę składni… pac, mamy Ruby.
Tylko zgubiłeś jeszcze po drodze gdzieś Common Lisp'a ;] i Pythona z których Ruby czerpie.
Ooj, to nie była taka znowu formalna definicja ;p.
Miałem na myśli to, że pewien podzbiór Ruby to Perl 5 w innej składni. Ruby to głównie CL + Perl, z innych języków już mniej.
Swoją drogą chyba wolałbym żeby Ruby miał S-exp'y, Eifflowa składnia momentami jest śmieszna. Zresztą Ruby też ma swoje potforki składniowe, na przykładzie silni:
<code>(2..n).inject(&:*)</code>
…i tak najseksowniejszy z wymienionych jest Common Lisp ;p
PS prawidłowo powinno byc nie "Common Lisp'a" a "Lommon Lisp", ze względu na rozwinięcie ;> L
Potwornosc
(2..10).inject(&:*)
to sprawa gustu
moj jak najbardziej cenii sobie taka skladnie jako skrot tego
(2..10).inject { |i,j| i*j }
Chociaz znacznie lepiej wyglada to w przypadku metody map!
Potworne natomiast moga byc ciagi blokow
(2..100).select { |i| i % 2 }.map { |i| i * 10 }.inject { |i,j| i+j+20 }
Przypomina to troche Perl golf, ale z drugiej strony sa bardzo przydatne gdy chcemy cos szybko sprototypowac, albo testujemy cos w IRB.
Eee, właśnie zniechęciliście mnie do Ruby : P
niewiedziec czemu, ale dziwnie dla mnie brzmi uzycie slow 'perl' i 'nowoczesny' w jednym zdaniu :~
Temat spotkania jest interesujący, Moose to klej składniowy pozwalający pisać w perlu w stylu bliskim eleganckim językom obiektowym, Perl jest fajnym językiem …
… tylko czemu to spotkanie musi być organizowane akurat w Środę Popielcową?
Poperlcową ;p