Tonguç Yumruk'un Weblog'u
Anlık olaylar, fikirler, gudik ismail vs...

Sun, 07 Nov 2004

Lisp ile uğraşmaya başlayalı çok olmadı. Şimdilik kod yazan kod işlerine ve makrolara çok bulaştığımı söyleyemeyeceğim. Fakat Barış Metin'in bu konuda yazdıklarını okuduktan sonra benim de birşeyler karalamam gerektiğini hissettim.

Dediğim gibi Lisp'te çok yeniyim. Bu nedenle örneği hem daha iyi hakim olduğum bir dil olduğundan, hem de Lisp'e benzer bazı fonksiyonel programlama özellikleri içerdiğinden Python ile vereceğim. Kod yazan kod mantığı oldukça ilginç bir yapıdır. İyi kullanıldığınızda kodunuzda oldukça ilginç taklalar attırabilirsiniz. Kod yazan kodların en tipik örneği sonuç olarak bir fonksiyon döndüren fonsiyonlardır. Bunu bir örnekle açıklamak gerekirse:

>>>def jenerator(carpan):
...    return lambda x: x * carpan
>>>onla_carp = jenerator(10)
>>>onla_carp(5)
50

Bu mantığın daha da gelişmiş haline ise metaclass programlama deniyor. Aslında Metaclass programlama basit bir blog yazısına sığmayacak kadar uzun, detaylı ve benim çok ta uzman olmadığım bir konu. Metaclass programlama için basitçe kod yazan kod mantığının nesne yönelimli programlamaya uyarlanmış hali diyebiliriz. Bu anlamda meta sınıflar sınıf üreten sınıflar olarak tanımlanabilir. Bu knouda daha çok bilgi edinirsem yine yazarım.

[00:12] | [] | # | G! |
Elektrikli Posta
Uptime
1 yıl, 26 gün, 4 saat, 31 dakika
Çocuklara Bilgisayar
Kategoriler
/ (201)
  dev/ (13)
  kod/ (28)
  life/ (2)
  linux/ (38)
    freedays/ (2)
    senlik/ (0)
      2006/ (15)
  misc/ (58)
  mobil/ (3)
  musiki/ (18)
  net/ (10)
  tech/ (9)
  web/ (5)
Zaman Makinesi
< November 2004 >
SuMoTuWeThFrSa
  1 2 3 4 5 6
7 8 910111213
14151617181920
21222324252627
282930    
Kapı Komşuları
Güzel Siteler
Ivır zıvır
XML Feed

FSF Associate Member: 2040

Powered by PyBlosxom

Valid XHTML 1.0!