Perl programcısı olmaktan gurur duyanlar için özel !

0
sundance
Perl'ün yaratıcısı Larry Wall, alışageldiğimiz tarzında yaptığı sunumla, 7. geleneksel Perl Soğanının Durumu isimli toplantıda yine herkesi kırdı, geçirdi :)

'Biz, isteksizler,
cahiller tarafından öncülük edilen bir yolda,
imkansızı gerçekleştirmeye çalışıyoruz.
O kadar uzun süredir o kadar çok şeyi, (elimizdeki) o kadar az şeyle gerçekleştirdik ki
Artık (elimizdeki) hiçbir şeyle, herhangibir şeyi yapabilecek hale yetkinliğe eriştik.'

Görüşler

0
FZ
Geçen gün ofiste Larry Wall'un bu konuşmasının metnini okumaya başladığımda, teknik bir konuşma ne kadar eğlenceli ve komik ve aydınlatıcı olabilir ki diye düşünüyordum. Önce gözümden yaş gelene dek güldüm, sonra da üstadın vizyonuna ve teknik konuları eğlenceli şekilde açıklama yeteneğine, metaforları, felsefeyi, tarihi, vs. kullanışına hayran kaldım.
0
FZ
Mastermind oyununu bilen bilir, bilmeyenler için açıklama:

Bilgisayar 4 basamaklı gelişigüzel bir tamsayı seçecek, her basamak 1-6 arasında olacak. Siz de her seferinde 4 basamaklı bir sayı gireceksiniz rakamları 1-6 arasında. Girdiğiniz rakamlardan birinin kendisi mevcut ama yeri yanlış ise +, kendisi mevcut ve yerini de doğru tahmin etmişseniz * değeri döndürülecek ve bu ipuçlarına bakarak tahmininizi geliştireceksiniz. Doğru tahmini yaptığınızda ya da ! girdiğinizde oyun bitecek.

Örn: Bilgisayarın seçtiği sayı: 5536 olsun, siz 1563 girerseniz bilgisayar size ++* şeklinde ipucu verecek yani iki rakamın yeri yanlış, birinin doğru, bir tanesi ise bilgisayarın tuttuğu sayı içinde mevcut değil şeklinde.

Bunu favori programlama dilinizde nasıl yapacağınızı düşünedurun, ben size bunu yapan Perl kodunu aktarayım:


#!/usr/bin/perl -l
$c.=1+int rand 6for 6..9;while(){/^d{4}$|!/||next;$_.=$c;4while
s+(.)(.{4})1+?$2*+s;4while s-(d)(.* .*)1-+$2-;print/[*+]/g;/*{4}|!/&&die


Tepedeki ilk satırı saymazsak sadece 2 satır ;-)

Detaylar için adres: http://perlmonks.org/index.pl?node_id=276359

FZ: İtina ile programlama dilleri savaşına çanak tutan provakatör editör :-P
0
St
Iki satir olabilir, ama kesinlikle dogal degil :)
Bunu javayla yazmak bilem buyuk haz verir, velakin yukardaki perl kodu insana oykh dedittiriyo
(St, javadan da perlden de hazetmeyen, bu gidi$le hic bi programlama diliyle duygusal bag kuramiyacakmi$ izlenimi veren FMci :)
0
FZ
Yanlış anlama olmasın, söz konusu Perl kodu `obfuscated code´ kategorisinden seçilmiştir. Yani özel olarak kısaltılmış, karmaşık hale getirilmiş bir koddur. Aynı şeyi tabii ki yine Perl dilinde, çok daha açık seçik, uzun, anlaşılır, kolay okunur şekilde yazmak mümkündür. Maalesef insanlar bu tip örneklere bakıp Perl´in zor bir dil olduğunu düşünmektedirler, bu, tam olarak doğru değildir. Dilin ne kadar esnek olduğuna dair bir örnek olarak gösterilmiştir, kesinlikle `doğal´ ve kolay anlaşılır program örneği olarak sunulmamıştır :) Sakın bunu evde tek başınıza denemeyin, mutlaka bir uzman gözetiminde çalıştırın :-P
Görüş belirtmek için giriş yapın...

İlgili Yazılar

Perl 20. Doğum Günü ve Perl 5.10 Çıktı

anonim

Geçtiğimiz günlerde Perl'in 20. yaşgünü tüm dünyada coşku ile kutlandı. Doğum gününden 1 gün önce Perl Vakfı Perl 5.10'u duyurdu.

Perl 5.10 da görünen en önemli değişiklik smart match operator. Bir tür karşılaştırma yapmamıza yarayan operatör array içinde aradığımız scalar değeri bulmamızı sağlıyor. Yeni operatörümüz: "~~". Örnek vermek gerekirse $needle scalarimizi array @haystack içinde arıyorsak, kolayca yeni operatörümüzü kullanıyoruz.
if ($needle ~~ @haystack) ...

Sonuç olarak artık Perl'de tüm kaşılaştırmalar doğru şeyi yapmamızı sağlıyor.

ePerl ile Kolay Internet Programlama

perlci

ePerl modülü ile Perl kodlarini tıpkı ASP ya da PHP gibi HTML dosyalarının içine gömebilirsiniz. Böylelikle daha kolay bir şekilde Perl kullanmış olursunuz. Bu modülü kullanabilmeniz için de tabii ki biraz Perl bilmeniz gerekir.
Daha fazla bilgiyi http://www.eperl.net adresinde bulabilirsiniz.

Editörün Notu: Rıza Çelik'e Perl'e katkılarından ötürü teşekkürler.

Perl Öğreniyoruz - 3

cayfer

2. bölümün sonunda bu hafta "listeler"den söz edeceğimi söylemiştim.

Listeler (arrays) Perl'in çok güçlü olduğu konulardan birisidir. Perl'de bir listeden söz ederken değişken adının başına bir @ işareti koymalısınız. (Hatırlıyorsanız sayıl (scalar) değişkenlerin adı $ işareti ile başlardı).

Kevin Poulsen iş başında!

sundance

Güvenlik dünyasının meşhur kötü çocuklarından, eski Security Focus yazarı Kevin Paulsen, yazdığı bir Perl scriptle U.S. National Sex Offender Registry kayıtları ile MySpace kullanıcılarını karşılaştırıp, bir cinsel suç zanlısının tespitine yardımcı olmuş.

Kendisini daha çok Los Angeles'daki KISS FM'in 102. arayan kişiye verdiği Porsche 944 S2'i kazanabilmek için, bütün telefon konuşmalarını durduran kişi olarak tanıdığımız Dark Dante kod adlı Poulsen yıllardır bilgi güvenliği alanında gazetecilik yapmakta, hatta zaman zaman bu olaydaki gibi otoritelere yardımcı olmakta.

KSpyware

tongucyumruk

KSpyware adının çağrıştırdığının aksine KDE üzerinde çalışan bir casus yazılım veya casus yazılım tarayıcısı değil. KSpyware, Win32 platformunda çalışan özgür bir casus yazılım. Klasik anlamdaki casus yazılımlardan en önemli farkı kodlarının tamamen açık olması. Gilbert Nzeka adlı bir programcı tarafından Windows altında casus yazılımlar geliştirme yöntemlerini ortaya koymak amacıyla geliştirilen bu program bilin bakalım hangi programlama diliyle yazılmış?

Not: Bu programı GNU/Linux platformuna port edecek gönüllü bir arkadaş aranıyor.