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

PL/scheme: PostgreSQL için Scheme

FZ

cs-lisp e-posta listesinde Volkan Yazıcı tarafından geliştirilen PL/scheme projesinin duyurusu bugün yapıldı.

R6RS Yayınlandı

tongucyumruk

1970'lerin sonunda özellikle eğitim alanında rahatça kullanılması ve o dönemde Lisp ailesindeki (daha sonra Common Lisp olarak standartlaşan) benzer dillerin karmaşıklığından uzak durması planlanarak tasarlanan Scheme dilinin yeni standardı R6RS resmileşti. 1998 yılında duyurulan R5RS'in ardından birçok güncelleme geçiren dil standardı buna karşılık temel tasarım hedeflerini aynen koruyor.

Hepimize hayırlı, uğurlu olsun.

Not: Slashdot'tan, Google News'ten, hatta Schemers.org'dan önce fazlamesaide!

C++ içinde Lisp kullanmak

bk

C++ kodlarken "ah şu anda filanca fikrimi Lisp ile ne kadar kolay ifade ederdim" dediğiniz oluyor mu? Bir ortamdan diğerine geçmeye, ayrı ayrı işlemler yapmaya üşenenlerden misiniz?

En az bir evet cevabı verdi iseniz InteLib tam size göre. C++ kodlarken doğrudan Lisp sözdizimine ve semantiğine çok benzer şekilde kod yazmanızı ve doğrudan derlemenizi sağlayan bir kütüphane. Şu anda aktif olarak geliştiriliyor. Ne gerek var ki böyle bir şeye diyenler FAQ belgesini okuyabilirler.

Neden Arc Özellikle Nesne Yönelimli Değil?

FZ

Paul Graham'ın Why Arc Isn't Especially Object-Oriented makalesi yazılım dünyasında bazı çok tekrarlanan ve düşünmeden kabul edegeldiğimiz kalıpları sorgulamamız için kısa ve etkili makalelerden biri.

Daha önce Common Lisp ile Internet Programlamaya Giriş Kılavuzu makalesi ile tanıdığımız İstanbul Bilgi Üniversitesi, Bilgisayar Bilimleri bölümü öğrencilerinden Haldun Bayhantopçu'nun çevirisi ile bu makaleyi FM'de de yayınlıyoruz. Çevirinin daha güzel bir hale gelmesinde emeği geçen Türkiye Lisp Çalışma Grubu üyelerine teşekkürler.

Lisp - Asla Ölmeyecek Olan Dil

FZ

ESR bir oyun ile ilgili grafik işlerini halletmek için GIMP kullanmaya başlamış ve bazı şeyleri otomatikleştirmesi gerekince GIMP'in nasıl programlanabileceğine göz atmış. Karşısına çıkan Script-Fu ortamında Scheme ile karşılaşınca kendini evinde gibi hissetmiş ve LISP — The Language That Will Not Die başlığı altında düşüncelerini ve yazdığı kodu paylaşmış.

Not: cs-lisp listesinde haber verdiği için için Recai Oktaş'a teşekkürler.