[cs-lisp] Web programlama belgesi
Merhaba, Sonnda FZ'nin bazı kıtalararası balistik füzeleri evimin tepesine yönlendirmesi üzerine düştüğüm tembellik batağından uyanıp bir UCW ve CLSQL belgesi yazmaya başladım. Henüz başlangıç halinde gerçi ama SVN üzerinde olduğu için şimdiden web üzerinden erişilebilir durumda. Adresi: http://tonguc.ath.cx/svn/Writings/UnCommonWebProgrammingWithCL/ucwpwcl-1.tex Belgeyi yazarken daha önce hiç CL ile OOP görmemiş insanları da düşünerekten çok kısaca CLOS'tan da bahsetme ihtiyacı duydum çünkü CLOS'a ilişkin birçok kavram daha ileride hem UCW'de hem de CLSQL'de çok sık görünüyor. Bazı kelimelere türkçe karşılık bulmakta zorlandığım için (mesela Generic Function) orjinal halini kullandım, onun dışındakiler için mümkün olduğunca türkçe karşılıklar bulmaya çalıştım ve yazının içinde ilk kullanıldıkları yerde ingilizce karşılıklarını parantez içinde belirttim. Yazı hakkında eleştirileriniz, önerileriniz oldukça yazabilirseniz sevinirim. -- Sevgi Saygı GNU/Linux There is an old custom among my people. When a woman saves a man's life, he is grateful. -- Nona, the Kanuto witch woman, A Private Little War, stardate 4211.8. Tonguç Yumruk signature.asc Description: Digital signature ___ cs-lisp mailing list cs-lisp@cs.bilgi.edu.tr http://church.cs.bilgi.edu.tr/lcg http://cs.bilgi.edu.tr/mailman/listinfo/cs-lisp
Re: [cs-lisp] Re: Web programlama belgesi
Thus saith Emre Sevinc : DVI ciktisina bakmak daha zevkli oluyor tabii ama bunun icin senin belgeyi alip kendi sistemimde derlemek gerekiyor, acaba on-the-fly o LaTeX belgesini benim Firefox'a HTML olarak getiren bir düzenleme yapman mümkün müdür? Olmasa da olur türünden, olsa güzel olur seklinde. Dosyalar SVN ortamında sürüm kontrolü altında duruyorlar. Bu nedenle doğrudan dvi, pdf gibi ikilik çıktı dosyalarını orada barındırmak işime gelmiyor açıkçası. Ancak bildiğim kadarıyla SVN'in bir kanca sistemi var, sanıyorum her commit'te bir çıktı dosyası üretmesini sağlamak mümkün olabilir. Ben bunu bir araştırayım. Yazinin basinda tam olarak neyi anlatacagini vurgularsan iyi olur. Esas amacin Lisp ögretmek degil, biraz Lisp bilen birine özel olarak UCW ile Lisp araciligi ile web programlama ögretmek oldugunu vurgulamak iyi olabilir. Hmm... bununla ilgili bir not düştüm sanıyordum... Abstract'ı biraz uzatmak gerekecek sanırım... Söyle bir örnek vermissin: (defgeneric fonksiyon-adı (sınıf-değişkeni parametre1 parametre2) (:documentation Fonksiyonun açıklaması) (:method-combination :most-significant-first)) metod kombinasyonu konusuna girecek misin? Detayli ve yer yer kafa karistirici (göz korkutucu) olabilir baslangicta. :method-combination hic belirtilmese mesela yukaridaki örnekte? Açıkçası metod kombinasyonundan bahsedip bahsetmemek konusu benim de kafamı çok kurcaladı. Önce bahsetmeye karar vermiştim fakat bahsetmesem daha iyi gibi. Onun yerine sadece generic fonksiyonlar ile metodlardan ve bu ikisinin ilişkisinden bahsedeceğim. Ne de olsa amaç sadece diğer dillerde OOP tecrübesi olan insanları CLOS terminolojisine ısındırmak, Dİğer dillerde pek rastlanmayan bu tip birşeyi anlatmanın alemi yok. Sadece metodlar ve generic fonksiyonlardan bahsedeceğim. Aslında generic fonksiyonlardan da bahsetmek istemezdim ama daha sonra fonksiyon imzası uyuşmazlığından çıkan sorunları dinlemek istemem doğrusu. Slot diye baslamissin ama sonra yuva demissin pek cok yerde. Hangisi olacagina karar vermekte fayda var. Biliyorum, yuva aniden aklıma gelince kullanmaya başladım. Yeni halinde düzeltildi... ilklendirilirken lafi hala cok oturmus bir laf degil gibi geliyor bana. Parantez icinde (initialize) filan bir sey yazilirsa faydali olabilir. İlklendirmeden kastım aslında instance oluşturmaktı fakat sanırım ilklendirme kelimesi bunu tam karşılamıyor. Var mı bir önerisi olan? Bu ilk bakista gözüme carpanlari not ettim. Belgeyi güncelledikce haber verirsen daha detayli ve keskin bakmaya calisirim. Hmm... En iyisi SVN'e her commit'te sana bir mail atsın. Ben de böylece hem ilk CL spammer'ı olur, hem de intikamımı almış olurum. Simdilik bu kadar. -- Emre Sevinc Çok teşekkürler. (Türkçe karakterleri kullanalım, kullandıralım) -- Sevgi Saygı GNU/Linux Systems programmers are the high priests of a low cult. -- R.S. Barton Tonguç Yumruk signature.asc Description: Digital signature ___ cs-lisp mailing list cs-lisp@cs.bilgi.edu.tr http://church.cs.bilgi.edu.tr/lcg http://cs.bilgi.edu.tr/mailman/listinfo/cs-lisp
Re: [cs-lisp] Re: Web programlama belgesi
Pzt, 2006-01-09 tarihinde 20:56 +0200 saatinde, Emre Sevinc yazdı: TY == Tonguc Yumruk [EMAIL PROTECTED] writes: [ ... ] DVI ciktisina bakmak daha zevkli oluyor tabii ama bunun icin senin belgeyi alip kendi sistemimde derlemek gerekiyor, acaba on-the-fly o LaTeX belgesini benim Firefox'a HTML olarak getiren bir düzenleme yapman mümkün müdür? Olmasa da olur türünden, olsa güzel olur seklinde. kirli ve hızlı: http://canb.net/latex.sh?http://tonguc.ath.cx/svn/Writings/UnCommonWebProgrammingWithCL/ucwpwcl-1.tex şu anki versiyonunu doğru derleyebiliyor ama başka bir dosya ile test etmedim. Üst düzeyde verim için mozilla-acroread paketini kullanınız. Server error gelir ise derleyememiştir, telaşa mahal yok. eğer aa bu iyiymiş, kullanırım derseniz ve de başka bir URL ile hata verir ise URL'i bana yolayınız, eksikleri ekleyeyim. -- Can Burak Cilingir Istanbul Bilgi University Following address is a bot-trap [EMAIL PROTECTED] signature.asc Description: This is a digitally signed message part ___ cs-lisp mailing list cs-lisp@cs.bilgi.edu.tr http://church.cs.bilgi.edu.tr/lcg http://cs.bilgi.edu.tr/mailman/listinfo/cs-lisp
[cs-lisp] Re: Web programlama belgesi
CBC == Can Burak Cilingir [EMAIL PROTECTED] writes: CBC Pzt, 2006-01-09 tarihinde 23:07 +0200 saatinde, Evrim ULU CBC yazdı: Biraz senaryo ürettim. Bunun yerine cronjob olarak bir betik dosya ile svn'den checkout edip orada i$lem yapmak daha mantikli. Daha az intrusive. CBC Bundan daha düzgünü http'den HEAD ile dosyanın değişip CBC değişmediğine bakıp değişti ise çekmek/derlemek olsa gerek. CBC fam (fileshanged) ile havuzu gözleyip, değiştiğinde çekip, CBC çekilen alanı da fam ile izleyip, .tex dosyası değiştiğinde CBC derlemek daha doğru olabilir. tabi sadece dosyanın bulunduğu CBC dizin çekilirse 2 fam'a gerek olmayacaktır. Arkadaslar sakin olun! :) Ben sadece düsünmüstüm ki hani böyle on-the-fly tex'i HTML yap da (bir yere temp. olarak yaz) öyle göster bakan kisiye gibi bir sey idi. Bir nevi CBC'nin o yaptigi sey gibi, gerci o PDF yapiyordu ayri. Ben iste tam da o tür bir seyin HTML üretip benim Firefox'ta gösteren halini kast etmistim. Tabii her seferinde her seferinde calisacagi icin belki biraz islemci yükü getirir de yani zaten bakacak olan kisi üctür, bestir. (Aksi olursa ne mutlu bize! :) -- Emre Sevinc eMBA Software Developer Actively engaged in: http:www.bilgi.edu.tr http://ileriseviye.org http://www.bilgi.edu.tr http://fazlamesai.net Cognitive Science Student http://cazci.com http://www.cogsci.boun.edu.tr ___ cs-lisp mailing list cs-lisp@cs.bilgi.edu.tr http://church.cs.bilgi.edu.tr/lcg http://cs.bilgi.edu.tr/mailman/listinfo/cs-lisp
RE: [cs-lisp] Re: Web programlama belgesi
Title: RE: [cs-lisp] Re: Web programlama belgesi Yazinin basinda tam olarak neyi anlatacagini vurgularsan iyi olur. Esas amacin Lisp ögretmek degil, biraz Lisp bilen birine özel olarak UCW ile Lisp araciligi ile web programlama ögretmek oldugunu vurgulamak iyi olabilir. Hmm... bununla ilgili bir not düstüm saniyordum... Abstract'i biraz uzatmak gerekecek sanirim... Sadece biraz daha vurgulamak ve belki birkac cümle ile ballandira ballandira bir seyler deyip heveslendirmek manasinda. Zaten kaynakca diye bir kisim yapip, Lisp temel belgeleri nelerdir, hangi web siteleri Lisp ortamlarinin kurulumu icin bilgi verir, vs. gibi seyleri yazacaksin diye düsündüm. O yüzden girisi cok kisa ve basit tutmakta fayda var. Hah bir de simdi aklima geldi, Bu Belge Kimler Icindir?, Kimler Icin Degildir? Prerequisites (türkce nasil denir bilmiyorum) gibi bir iki bölüm de eklenirse hakkimizda dava acabilecek sinirli ve hevesli programci kitlesine karsi tedbir alinmis olur. Söyle bir örnek vermissin: (defgeneric fonksiyon-adi (sinif-degiskeni parametre1 parametre2) (:documentation Fonksiyonun açiklamasi) (:method-combination :most-significant-first)) metod kombinasyonu konusuna girecek misin? Detayli ve yer yer kafa karistirici (göz korkutucu) olabilir baslangicta. :method-combination hic belirtilmese mesela yukaridaki örnekte? Açikçasi metod kombinasyonundan bahsedip bahsetmemek konusu benim de kafami çok kurcaladi. Önce bahsetmeye karar vermistim fakat bahsetmesem daha iyi gibi. Onun yerine sadece generic fonksiyonlar ile metodlardan ve bu ikisinin iliskisinden bahsedecegim. Bence de öyle yapmakta fayda var, CLOS derinliklerini ve metodlarin cagrilma sirasinin nüanslarini merak edenleri yine Kaynakca bölümündeki ilgili kaynaklara yönlendirebilirsin nasil olsa. Ne de olsa amaç sadece diger dillerde OOP tecrübesi olan insanlari CLOS terminolojisine isindirmak, DIger dillerde pek rastlanmayan bu tip birseyi anlatmanin alemi yok. Insanlar yeterince sinirlenecekler zaten nesne.metod yerine (metod nesne) gibi bir sey gördüklerinde. Saka yapmiyorum, cok örnegini yasadim. Eski köye yeni adet mi getiriyorsunuz, cok bilmissiniz, bla bla bla seklinde. Sen sonra ugras dur CLOS tarihcesi, vs. Einstein bosuna dememis önyargilari parcalamak atomu parcalamaktan zor diye. Bu yüzden ya kitlenin CLOS yabancisi oldugunu düsünüp ürkütmeden cok yumusak ve sade giris yapacaksin, yahut üc bes Lisp, CLOS filan bildigini varsayip yine cok üzerinde durmayacaksin. Sadece metodlar ve generic fonksiyonlardan bahsedecegim. Aslinda generic fonksiyonlardan da bahsetmek istemezdim ama daha sonra fonksiyon imzasi uyusmazligindan çikan sorunlari dinlemek istemem dogrusu. Sorun cikarsa yazacaklari adresler belli ;-) ilklendirilirken lafi hala cok oturmus bir laf degil gibi geliyor bana. Parantez icinde (initialize) filan bir sey yazilirsa faydali olabilir. Ilklendirmeden kastim aslinda instance olusturmakti fakat sanirim ilklendirme kelimesi bunu tam karsilamiyor. Var mi bir önerisi olan? ... olusturulurken desek mesela? Yani ilk kez olusturulurken demek de sacma geliyor cünkü olusturuldugunu söyledigimiz sey tabii ki ilk kez olusturuluyor, aynisindan bir daha olusturulmuyor, vs. Maalesef su anda benim daha iyi bir önerim yok. Bu ilk bakista gözüme carpanlari not ettim. Belgeyi güncelledikce haber verirsen daha detayli ve keskin bakmaya calisirim. Hmm... En iyisi SVN'e her commit'te sana bir mail atsin. Ben de böylece hem ilk CL spammer'i olur, hem de intikamimi almis olurum. Bana degil cs-lisp listesine yani buraya atsin. Fena mi olur ;-) Saka yapmiyorum. Her ciddi degisiklikten sonra bir göz üzerinden gecersek, bu belge bitip kitlelere duyuruldugunda ortaya gercekten iyice süzülmüs, kaliteli bir eser cikmis olacaktir. ___ cs-lisp mailing list cs-lisp@cs.bilgi.edu.tr http://church.cs.bilgi.edu.tr/lcg http://cs.bilgi.edu.tr/mailman/listinfo/cs-lisp