Zmierzch Perl Golfa?

tech • 495 słów • 3 minuty czytania

Ostatnio trochę zawrzało w społeczności Perla wokół tematu golfa i obfu. Szczególnie przez pojawiające się twierdzenia mówiące, że to właśnie perl golf jest w dużym stopniu powodem “narodzin” określenia: Perl is line noise.

Jednym z najlepszych sposobów oczyszczenia wizerunku Perla, według Davida Goldena byłoby zaprzestanie zabaw z golfem i celowym zaśmiecaniem kodu, co próbował przedstawić na swoim blogu we wpisie Stop with the Perl golf already!

Czy, aby na pewno porzucenie golfowania jest dobrym pomysłem?

Rozumiem frustrację niektórych programistów, ale czy Perl golf w zamierzeniu nie miał być dobrą zabawą, fakjnym konkursem na napisanie jak najmniej zajmującego programu wykonującego określone zadanie? Przecież nikt przy zdrowych zmysłach nie pisze w takim stylu kodu produkcyjnego, no może prócz sysadminów jak skomentował Ashley w/w notkę:

I don’t think Perl golf is a harmful activity, if you do it outside production code.

Podobnie jak Sam Crawley we wpisie Why do people dislike Perl? komentującym post Davida, zgadzam się z większością komentarzy. Szczególnie z tymi głosami, które ukazują, że to nie wina golfa i że istnieje wiele innych powodów, dlaczego ludzie nie lubią Perla, a nowi programiści się odstraszają.

Niektórzy uważają, że to przez zaciemniony i golfowy kod jaki można znaleźć nawet na niektórych pierwszych stronach tutoriali, po które sięgają początkujący. Najlepszym rozwiązaniem jest właśnie pozbycie się stamtąd tych fragmentów kodu oraz ukazywanie nowej idei i podejścia w programowaniu z wykorzystaniem Perla - Modern Perl, Catalyst

Bardzo spodobał mi się komentarz Jonathana Rockway (autora książki o frameworku Catalyst i jego developera?), który jasno mówi - po co się martwic tym, co myślą inni (nie Perlowi) programiści? Podzielam to zdanie, o czym można się przekonać w jakieś wcześniejszej notce, gdzie podobnie się wyraziłem.

Perlowe golfowanie nieco umiera. Obecnie społeczność Perla bardziej preferuje elegancki, czytelniejszy kod. Za to coraz popularniejszy staje się golf w społeczności Pythona. Już widzę ten uśmieszek na twarzy Pythonowca, który dumnie prezentuje swój nowy genialny program, który zajmuje 3 linijki i przypomina znany “line noise”. Do tego oznajmiając światu, że to właśnie jego język jest genialny, bo potrafi takie rzeczy robić, a inni powinni schować głowy w piasek :)

Osobiście wolałbym, aby sama zabawa nie umarła śmiercią naturalną. Uważam że Perl golf jest świetną zabawą i daje dużo satysfakcji, przy czym może też być miarą dobrej znajomości języka i jego “magicznych właściwości”.

Sam nigdy nie brałem udziału w żadnym golfie, uważam że moja perlowa wiedza i doświadczenie nie są wystarczające. Golf i JAPH jest dla ludzi, którzy znają wszelkie sztuczki i kruczki Perla, poznali wszystkie, lub większość (bo czy ktoś może poznać wszystko?) idiomów tego języka. A nawet błędy występujące w danej wersji interpretera, o czym może świadczyć jeden z punktów regulaminu tej fajnej zabawy, mówiący wprost o możliwości wykorzystania błędów z danej wersji środowiska jaki będzie wykorzystywany przy ocenianiu programu.

Bardzo ciekawą lekturę o golfie można znaleźć na PerlMonks, ja polecam serię czterech artykułów eyepopslikeamosquito - “The golf course looks great, my swing feels good, I like my chances” (cz. I, cz. II, cz. III, cz. IV).

Komentarze (0)

Dodaj komentarz

/dozwolony markdown/

/nie zostanie opublikowany/