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

Windows için ideal Perl ortamı

sundance

Uzun zamandır Perl için Windows ortamında güzel bir Entegre Yazılım Geliştirme ortamı arıyordum, sonunda buldum Open Perl Ide

Gerek debug özellikleri ile gerekse editörünün sağladığı kolaylıklar ile gerçekten dört dörtlük bir Perl geliştirme ortamı, herkese tavsiye ederim.

Perl Öğreniyoruz - 2

cayfer

Geçen hafta çözdüğümüz örneği bir de Perl'in özelliklerinden yararlanarak çözelim.

Editörün notu: Perl öğreniyoruz yazı dizisinin ikincisini okuyorsunuz. Sabırsız olanlarınız için cayfer.bilkent.edu.tr incelenmesi gereken bir adres.

Perl için FMOD Kütüphanesi

mustafa_

Fmod for Perl, FMOD müzik ve ses efektleri sistemleri kütüphanesine erişmek için geliştirilmiş bir Perl eklentisidir.

`Diğerleri(miz) için Flash´

butch

Perl::Flash ın beta sürümünün hazır olduğu Slashdot da duyuruldu. Artık Perl kullanarak Flash animasyonları yapılabilecek. Proje hakkında geniş bilgi burada...

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.