Fonksiyonel Geometri, Lisp, Escher, Postscript: Sanat ve Bilgisayarlar

0
FZ
Daha önce FM'de bir Mars programlama projesi yarışması bağlamında adı geçen Frank Buss bu sefer de gündemimizi Peter Henderson'ın makalelerinden uyarladığı ve Common Lisp kullanarak gerçekleştirdiği bir fonksiyonel geometri uygulaması ile meşgul ediyor. Fonksiyonel programlamanın grafik uygulamalarını kullanarak anlaşılması bakımından çarpıcı bir örnek. Program çıktısını Postscript olarak üretiyor.

Söz konusu grafik yapılar pek çok matematikçinin ve diğer bilim insanlarının da hayranlığını kazanan Hollandalı meşhur sanatçı M. C. Escher'in yapıtlarından esinlenerek hazırlanmış.
Bütün bunlara yol açan makalelere ise buradan ve buradan erişebilirsiniz. Ayrıca yine Henderson'ın ilk makalesini kullanarak Scheme dili ile bir uygulama örneğini çok güzel anlatan MIT'den hocaların rol aldığı bir videoyu da bu adresten çekip izleyebilirsiniz (sanırım 4. ya da 5. bölüm idi).

Not: Lisp geliştirme ortamına nasıl kavuşacağını merak eden FM takipçileri bu makaleden faydalanabilir.

İlgili Yazılar

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.

Yeni Başlayanlar İçin Common Lisp Geliştirme Ortamı

zekzekus

Common Lisp'e yeni başlayanlar için yapılacak ilk iş bir geliştirme ortamı oluşturmaktır. Bu konuda yeni başlayanlara kolaylık olması için Lispbox gibi hepsi birarada paketler mevcut. Ama özellikle MS Windows kullanıcıları için emacs tarzı bir geliştirme ortamı ve verimi artırmak için genelde yapılması gereken emacs özelleştirmeleri can sıkıcı olabiliyor.

Lisp'i Anlamak

anonim

Fazlamesai'deki Lisp hayranları bunu nasıl atladı bilmiyorum ama digg.com'da rastladığım, biz ölümlülerin kullandığı sıradan programlama dilleriyle uğraşanların da anlayacağı bir dille yazılmış The Nature of Lisp başlıklı bu yazı, Lisp hakkında şimdiye kadar okuduklarımın toplamından daha fazla şeyi anlamamı sağladı.

Lisp ile TILSIMLI ve Renkli Programlama: Lisperati

FZ

Tüm zamanların en renkli Common Lisp programlama kılavuzlarından Lisperati artık anadilimizde.

Söz konusu belge İstanbul Bilgi Üniversitesi Bilgisayar Bilimleri Bölümü öğrencisi Seda Çelebican tarafından Türk diline çevrildi. Belgenin Türk kültürüne uyarlanmasında ve genel editörlük işlemlerinde İstanbul Bilgi Üniversitesi eMBA Yazılım Geliştirme ekibinden Emre Sevinç emek harcadı. Bu süreçte çok titiz eleştirileri, geri beslemeleri ile bize yardımcı olan Bilkent Bilgisayar Mühendisliği bölümü öğrencilerinden Hayrettin Gürkök'e ve Lisp konusunda yardımcı olan Bülent Murtezaoğlu'na teşekkürü bir borç biliriz. Belgedeki hatalardan çevirmen ve editör sorumludur. Orjinal belgenin yazarı Dr. Conrad Barski hiçbir maddi hatadan ötürü sorumlu tutulamaz. Belgeyle ilgili tartışma ve her türlü soru için bu haberin altına yorum yazabilir, iletişim kurabilirsiniz.

Lisperati belgesindeki kodları denemek için hiçbir şey kurmanıza gerek yok. Belgede anlatıldığı gibi uzaktaki bir telnet servisine kolayca bağlanıp kodları hemen derleyebilirsiniz ancak bu konularla daha ciddi ilgileniyor ve kendi Lisp ortamınızı kurmak istiyorsanız daha önce FM'de yayınlanan Common Lisp Geliştirme Ortamı Kurulumu kılavuzundan faydalanabilirsiniz.

Güncelleme (2/5/2005): Kılavuzu PDF olarak hazırlayıp Ayhan Barış'a çok teşekkür ederiz.

Diyelim Ki Elimizde Nesneye Yönelimli Bir Dil Yok - Alice Nesneler Diyarında

FZ

Elinizdeki programlama dilinde nesneye yönelimli (OO - Object Oriented) programlama imkanı olmasa idi ne yapardınız? İki seçenekten biri gelirdi aklınıza herhalde:
  1. OO desteği veren bir dil kullanmaya başlamak.
  2. Elinizdeki dile OO desteği katmak için uğraşmak.
Bu kısa yazıda Peter Norvig'in PAIP (Paradigms of Artificial Intelligence Programming Case Studies in Common Lisp) kitabının 13. bölümündeki birkaç kısa örnekten yola çıkarak "eğer Common Lisp dilinde CLOS (Common Lisp Object System) gibi bir şey olmasaydı bunu nasıl gerçekleştirebilirdik?" sorusunun cevabının ilk bölümüne göz atacağız.