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

Core Uygulama Sunucusu Kurulumu

anonim

Common Lisp tabanlı uygulama sunucumuzu ücretsiz olarak deneyebilirsiniz. Bunun için yapmanız gerekenlerin anlatıldığı belgeye göz atabilirsiniz.

Günümüzde üretilen yazılımların çoğu web uygulamaları şeklinde ya da web servisleri olarak hizmet vermektedir. Web uygulamaları, erişilebilir, birden fazla kişinin kullanımına elverişli ve merkezi olarak güncellenebilir servislerdir.

Gelecekte oldukça fazla web uygulaması ve web servisi yazacağımız düşünüldüğünde bu konuda bize yardımcı olacak araçlar üretmek iyi bir yatırım olacaktır. Bu nedenle yazımda sizlere Common Lisp dili ile yazılmış bir web uygulama sunucusu olan Kor Web Uygulama Sunucusu'nu tanıtacağım.

UnCommon Web ile “Merhaba Dünya”

FZ

Ne zamandır fırsat bulamadığım UnCommon Web geliştirme çatısı ile bir kaç deneme yapabildim sonunda. Kurcalamaya başlamak için önce UCW’yi kurmam gerekti doğal olarak. Oldukça fazla sayıda olan bağımlı olduğu paketleri tek tek kurmak yerine şu adresten UCW-boxset paketini indirdim. Windows sistemimde çeşitli hatalar aldığımdan sanal makine üzerindeki Debian sistemime kurdum. Kurdum derken ev klasörümde arşiv dosyasını açtım sadece. Gerisi UCW-boxset klasöründeki “start.lisp” dosyasını Lisp sistemine yüklemekten ibaret zaten. Veritabanı erişimi için (malum web programlama veritabanı olmadan olmaz) clsql paketini kullandım...

Zekeriya Koç'un Common Lisp ile geliştirilmiş UnCommon Web uygulama çatısına güzel ve örneklerle dolu bir giriş niteliği taşıyan yazısının devamını buradan okuyabilirsiniz.

newLISP

bk

Bu kadar Lispçinin gözünden kaçmış olabilir mi bilemiyorum ama ben bulamadım: newLISP for BSDs, GNU/LINUX, MacOS X, Solaris, Win32.

newLISP, yapay zekâ ve istatistik gerektiren alanlarda web uygulamaları ve diğer türden yazılımlar için geliştirilmiş genel amaçlı bir betik dilidir. FAQ belgesi ve Common Lisp ile Scheme'den farklılıkları daha detaylı bilgi vermektedir.

Kor Bilişim'den DOM Programlama Araçları

aycanirican

DOM modelinin kısmi bir gerçekleştirimi artık Core Server projesi ile beraber geliyor. Bu araçla, birinci dereceden DOM nesneleri yaratabiliyor, parametrik DOM üreten fonksiyonlar tanımlayabiliyorsunuz. Öyle ki, tanımladığınız DOM yapısını javascript betiğine çevirip, web tarayıcının kullanabileceği bir hale getirebiliyorsunuz. Örnekler için Dom Programming belgesine bakabilirsiniz.

Bağlı Listeler, C, Lisp, Scheme...

FZ

Bağlı listeler programcıların kullanabilecekleri soyutlama araçları arasında önemli yer işgal ederler. Bu veri yapılarını kullanarak veri işleme süreçlerini kolayca yönetmek mümkündür.

Jonathan Bartlett, IBM developerWorks sitesindeki Techniques for using linked lists in C and -- smarter still -- Scheme makalesinde bağlı listelere dair önce C programlama örnekleri vermekte ve daha sonra liste yapısını dilin doğal parçası olarak ele alan Lisp benzeri Scheme dilinde benzer işlerin nasıl daha kolayca ve soyut seviyede yapılabileceğini göstermektedir.