Meta-programlama sanatı

0
tongucyumruk
IBM DeveloperWorks'te yayınlanan makalesinde Jonathan Barnett meta-programlama ve makro işleme konularını incelemiş. Yazının içinde CPP ve M4 gibi çeşitli makro dillerinden örnekler ve son olarakta Scheme ile yazılmış makrolardan bahsediliyor. Özellikle diğer dillerdeki makrolar ile Lisp ailesindeki dillerin makroları arasındaki farkı anlayabilmek için okunması gereken bir makale.

İlgili Yazılar

Pascal Costanza'nın Çok Dik Başlı Lisp Rehberi

FZ

Uzunca uğraşlardan sonra Pascal Costanza'nın dik başlı (!) Lisp kılavuzunu Bilkent Bilg. Müh. bölümü öğrencilerinden Hayrettin Gürkök'ün çevirisi ile anadilimizde yayımlama imkanına kavuştuk. AOP yani Aspect Oriented Programlama mefhumunu Common Lisp'e kazandırmış olan (ya da Debiancılar için: Debian aspectl paketleri) Costanza'nın bu yazısının Lisp heveslilerinin işine yarayacağını ümit ediyoruz.

Çevirinin özgün adresi http://ileriseviye.org/arasayfa.php?inode=costanza-lisp-guide.html'dir. Emeği geçen herkesin eline sağlık. Afiyet olsun...

Barack Obama'yı Semantik Web Üzerinden Lisp ile Sorgulamak

FZ

Öyle bir veri tabanı düşünün ki şu sorunuza doğru cevaplar veriyor: "Barack Obama nerede doğmuştu? (Nerede dünyaya gelmişti diye de yazabilirsiniz) Doğduğu yere 15 km uzaklıktaki şehirler ve kasabalar hangileri idi? 2000 yılında bu yerleşim yerlerindeki ortalama fakirlik seviyesi ne idi?"

Bunu tek bir ilişkisel veri tabanı ile kolayca yapabilir misiniz? Yahut daha doğru soru: Neden tek bir veri tabanı olsun ve bu neden ilişkisel olsun? Buyrun semantik web ve RDF kullanın. Nasıl mı?

eXtreme Programming ve Bir Başarı Öyküsü

FZ

Bill Clementson son blog girdilerinden birinde birkaç gün önce gerçekleştirdikleri etkinlikte sunum yapan ve bir başarı öyküsü aktaran Ken Dickey'e yer vermiş.

Avustralya kökenli başarılı bir start-up olan Memetrics'in öyküsünü çarpıcı bir dille anlatan Dickey, eXtreme Programming metodolojisi ve Common Lisp'ten faydalanarak geliştirdikleri sistemi anlatan güzel bir sunum hazırlamış.

Keskin rekabetten ve gizli silahların gücünden hoşlananlar için incelenesi bir örnek. Afiyet olsun.

Common Lisp ve Bir Optimizasyon Tekniği: Memoization

FZ

"Memoization" tabiri bilgisayar bilimlerinde ilk kez Donald Michie'nin 1968 yılında Nature dergisinde yayımlanan Memo functions and machine learning (Memo fonksiyonları ve makina öğrenimi) makalesi ile gündeme gelmiştir.

Memoization tekniği bir fonksiyonu hesaplarken önceden hesaplanmış değerleri hesaplamadan kullanmak, dolayısı ile işlemi hızlandırmak olarak tarif edilebilir. Sözcük olarak "memorization"ı yani "ezberleme" eylemini çağrıştırmakla birlikte daha genel bir anlamı kapsamaktadır.

Programlama dilinden bağımsız olmakla birlikte, bu yazıda "memoization" tekniğinin Common Lisp'te nasıl kullanılacağına bakacağız. Bunun için Peter Norvig'in PAIP kitabı ana eksenimizi oluşturacak.

Video: Second Episode - 20 dakika ve 100 satırda Reddit

FZ

Video çılgınlığı devam ediyor. Bu gidişle HOW-TO belgelerinin yerini HOW-TO videoları mı alacak? İnsanlar "öğret bana usta, adım adım göster" yaklaşımını daha mı çok seviyorlar? Daha önce duyurduğumuz videoyu yapan Sven Van Caekenberghe'nin Episode 2: (Re)writing Reddit in Lisp is 20 minutes and 100 lines videosu taze taze, sıcak sıcak kamuya sunuldu.