MatzLisp: Yeni bir Lisp lehçesi ;-)

0
anonim

Görüşler

0
pinguar
Matz, şu röportajında dilin tasarımı sırasında Lisp'ten de etkilendiğini belirtmişti zaten, ama bu kadarını beklemiyordum!
0
FZ
"Lisp: Rönesansını Yaşayan Dil" desem çok da yanlış laf etmiş olmam herhalde. 2000'lerden bu yana, özellikle son 2 yılda ciddi hareketlenme, yeni çıkan kitaplar, önyargılara aldırış etmeden hevesle ve merakla konuya giren genç hevesliler, Google Summer of Code'da başarı ile yazılım geliştirmiş gençler vs.

"Mainstream" BT medyasında da artık Lisp geçmeye başladı, daha önce eWeek'ten bir makale adresi vermiştim, bir başka makale daha gördüm: Lisp Deserves a Fresh Look.

Python, Ruby, JavaScript gibi dillerin geliştiricileri Lisp'ten epey esinleniyorlar ki bu da gayet doğal çünkü Lisp karşılaştıkları en esnek, kolay şekillendirilebilir dil ve programlamayı tekrar eğlenceli hale getiriyor.
0
FZ


Stefan Scholl'un Don't say "no"! - Lisp is for the mediocre programmer, too. başlıklı blog girdisi bazı önyargılara ve bunların yanlışlığına değinen güzel bir yazı, bunu da buraya not edelim.
0
tongucyumruk
Parantesiz Lisp, Lisp değildir! (bkz: Parenstone)

Her ne kadar genelde Python tercih etsem de Ruby'ye lafım yok. Haskell, Python vb... bazı dillerle birlikte yüksek seviyeli fonksiyonlar gibi Lisp'i güzelleştiren bazı özellikleri destekleyen daha birçok diğer dil de var fakat hiçbirinde benim Lisp'te en beğendiğim iki özellik mevcut değil, o yüzden hiçbirini Common Lisp veya Scheme ile karşılaştırmak içimden bile gelmiyor.

Bu iki özellik ne mi? Tabiiki parantezler ve prefix notation. Kesinlikle bir dilde bulunabilecek en güzel iki sözdizimsel özellik! Matz Ruby'ye bu özellikleri eklemeyi düşünüyor mu acaba? Eğer böyle birşey yaparsa ciddi ciddi Ruby öğrenmeyi düşünebilirim.
0
lifesdkver0_1
matz, parantezlerden o kadar sıkılmış olacak ki ruby'de metod tanımları ve çağrılarında dahi parantez kullanmak isteğe bağlı. tabi kastedilen s-expression herhalde ama ondan da 2.aşamada bahsetmiş zaten.
0
FZ
Emacs ve SLIME kullanmıyor muymuş? :)

Diğer dillerden farklı olarak Lisp'teki parantezler ne fazladır, ne eksik. Koymasak da olur denmez, koydum çünkü öncelik sırasını belli etmek istedim denmez.

Bu arada parantezlere laf eden insanların köşeli parantez açıp içine bir şey yazmaya, sonra başka bir şey yazmaya, sonra .... ve sonra sol baştan, üstten açtıkları her şey için tekrar köşeli parantez açıp başına bir bölü koyup sonra köşeli parantezi... ay yazarken bile afakanlar bastı ya! Evet, XML'den bahsediyorum tabii ki :) (bazı sazanların ben onu programatik olarak üretiyorum akıllım, hahahaha, demesi için tuzak; tuzağa düşenlerin kafasına donanım tabanlı XML prosesör makinaları ile vurulacak ve Lisp Machine'in kıymetini bilmezsin ha, al sana, al sana! denilecektir)

Bazı rivayetlere göre "reader" "macro" ile ( ve ) yerine küçüktür ve büyüktür işaretleri koyup insanları sakinleştirmek mümkün. Diyenlerin yalancısıyım ben, kızmayın :-p
0
hb
Buyrunuz:

(set-macro-character #\\< #'(lambda (stream char)

				      (read-delimited-list #\\> stream t)))

(set-macro-character #\\> (get-macro-character #\\)))

Sonra da:


a

Hayirli olsun.
0
hb
Galiba ornek kullanimi yazmayi beceremedim. Bir daha deneyeyim:

<car <cons 'a 'b>>
0
FZ
Hmm, benim kast ettiğim şöyle bir şeydi:

<car> <cons> <symbol>a</symbol> <symbol>b</symbol></cons></car>

Böyle daha az korkutucu gelir herhalde insanlara. Nedir canım öyle bir sürü parantez. Korkuyor insanlar parantezlerden. Bir sürü parantez. Saymak filan gerekiyor hepsini (yapacak başka işiniz yoksa ve kendinizi Emacs yerine koymak gibi acayip bir takıntınız var ise ;-))
0
realist
İlk zamanlar böyle demiyordu. Perl'den yola çıkmıştı. Mevcut dillerin hiç biri hem pratik hem de %100 nesne yönelimli değildi. Kendi dilini oluşturmayı seçmişti.
0
FZ
Lisp'ten etkilenmesi şaşırtıcı değil.

"%100 nesne yönelimli ve pratik" lafını görünce aklıma şunlar geldi:

1- Her zaman herkesi mutlu etmek mümkün değildir.

2- OOP'nin ...unu çıkarmamak lazım.

3- Tek bir OOP türü yok (message passing versus generic functions, vs.)

4- İyi ki Perl diye bir dil var.

5- İyi ki Lisp diye de bir dil var.

6- İyi ki Ruby diye bir dil var.

7- Perl6 ne alemde?

8- Haskell'i bu işe karıştırmamız şart mıydı?

9- Sonsuz döngüye girmeden bırakayım...
Görüş belirtmek için giriş yapın...

İlgili Yazılar

trendalicious: Trendy del.icio.us, CafeSpot

FZ

trendalicious, bir sosyal "bookmark"lama servisi olan del.icio.us için geliştirilmiş olan ve gerçek zamanlı web sitesi popülaritesini ölçüp yansıtan bir sistem. Son 60 dakika içinde en az iki kişi tarafından yollanmış URLler görüntüleniyor ve bunlar da güncel URL mesajlarının toplam sayısına göre derecelendiriliyorlar.

trendalicious'u yapan Will Glozer, aynı zamanda CafeSpot'un da programcısı. Kendisi ile yapılan bir röportajı buradan okumak mümkün. CafeSpot'un development blog'u da işin perde arkasını yansıtıyor.

Bu güncel, ilginç ve popüler web siteleri hangi platform ve dil ile mi hazırlanmış? Güzel bir soru... ;-) (ve daha güzel bir cevap!)

Kaynak: Planet Lisp, Lemonodor.

Core Services Projesi Duyuruldu: Gönüllü Common Lisp Programcıları Davetli

FZ

Tam da az önce FZ Blogs ortamında Türkiye’deki ticari BT ortamında Common Lisp platformunun yerinden bahsediyordum ki cs-lisp e-posta listesine gelen "Core Services" projesi başlıklı e-posta dikkatimi çekti. COR3 ekibinden Aycan İrican şöyle demiş:

Geçen aylarda yazdığımız bir web uygulamasının sonucu olarak, birtakım servisleri uygulamadan ayırarak bir genel kütüphane yazmayı planlıyoruz. Bu nedenle common-lisp.net üzerinde bir proje açtık.

Gelin Hep Birlikte Kodlayalım Çağrısı

FZ

Aycan İrican'ın cs-lisp e-posta listesine attığı bir e-postaya dikkat çekelim:

Selam,

Nasıl anlatabilirim bilmiyorum ama, bu listede common lisp programlama yapmak isteyen var mı acaba? Bir grup kütüphane ve buna bağlı bir web sunucu yazdık biz.

Ünlü Bir Microsoftçunun Lisp Aşkı

FZ

Yazdığı kitaplarla Microsoft ortamlarında programlama yapanların yakından tanıdığı ve davet üzerine bir süredir Microsoft'ta çalışan Don Box, son yazılarından birinde "Scheme Is Love" başlığı ile konuya girmiş ve Scheme'e olan aşkını itiraf etmiş.

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.