Golf
Ukalalığımı mazur görürseniz…
Burada
kestirmesi tabiatıyle awk veya sed:
awk -F'=' '/^PROJECT_ROOT=/ { gsub("\"","", $2); print $2 }' gitweb
sed -ne 's/^PROJECT_ROOT="\([^"]\+\)"/\1/p' gitweb
Filhakika perl‘de de bu bir “tek satırlık”tır:
perl -nle 'print $1 if /^PROJECT_ROOT="([^"]+)"/' <gitweb
Yok “ama bu bir betiğin bir şeysi sadece” ise, lafı uzatmadan dilin “selika”sına uygun bir golf atışı yapılır:
...
open CONF, 'gitweb' or die "yok açılmıyor: $!";
my $projectroot;
while (<CONF>) {
do { $projectroot = $1; last } if /^PROJECT_ROOT="([^"]+)"/;
}
...
Yok eğer “ben OOP manzarası isterim”se CPAN’da tura çıkılır, “sıtriim itereyt” eden OOP soslu bir modül bakılır.
Aynı kalbe hem Python hem Perl biraz zor girer; birini seven diğerini
terkeder.
Perl benim ilk aşkım; terkeden olmadım hiç bir zaman, Perl de
bu kaidenin dışında değil.