Cusp: Eclipse için Common Lisp Eklentisi

0
zekzekus
Lisp ile uğraşan ama Emacs editörüne alışamamış benim gibi kullanıcıların yardımına Eclipse IDE ortamı için hazırlanmış Cusp eklentisi yetişiyor.
Henüz 0.7.0 versiyonunda bulunan eklentinin sağladığı özelliklerin başlıcaları şunlar:

- SBCL derleyicisi eklenti ile birlikte geliyor.
- Swank kullanıyor.
- Oldukça iyi durumda kod tamamlama.
- Geliştirme ortamına entegre edilmiş REPL.
- Bütün dosyayı ya da belirli bir expression derleme.
- Tooltips ile sembol tanımı, macro-expansion vs.
- Windows, GNU/Linux ve Mac için hazırlanmış paketler.
- vb.


Özellikle günümüzde sık kullanılan geliştirme ortamlarına alışmış olan kullanıcılar için takip edilesi bir proje.

Görüşler

0
FZ
Halihazırda Eclipse gibi büyük bir IDE ortamını kurup Java, vb. diller için kullanmakta olanlar arasında Lisp'e heves edenler için anlamlı olabilir, öteki türlü sırf bu eklenti için gidip Eclipse indirip kurmak çok anlamlı görünmüyor.

Ayrıca sanki Emacs ve SLIME'a, SBCL yükleme mevzusuna biraz haksızlık yapılmış gibi. Debian ya da Gentoo gibi kaliteli GNU/Linux yazılımlarını kullanan kişiler için SBCL, SLIME, EMACS vs. kurmak misal bir apt-get komutuna bakar. Birkaç dakika sonra sistem emrinize amadedir. Yok eğer MS Windows kullanıyorsanız onun için LispBox, LispWorks, AllegroCL gibi her keseye ve zihniyete uygun anahtar teslim çözümler var.

Ekran görüntüleri, yani Eclipse seven sevebilir, belli bir IDE mantalitesi ve tutarlılık sağlıyor elbette öte yandan Lisp kodlarken bir fonksiyon ismi yazmışken onun tamamlamak ya da açıklama amaçlı karşıma kocaman sarı pop-up pencerelerin çıkması "büyük rahatlık" değil.

Bir konuda hak veriyorum, maalesef SLIME dokümantasyonu SLIME'ın güçlü ve çok kestirmeden iş güç yapmayı sağlayan özelliklerini tamamen yansıtmıyor, bundan şikayet edenler var haklı olarak. Mesela meşhur birkaç SLIME videosuna gelen "a-aa bu özellik de mi varmış, hiç bilmiyordum" tepkileri örnek gösterilebilir. Bu bakımdan rekabet iyi, belki SLIME geliştiricileri bu eklentiye bakıp eğer varsa daha güçlü yönlerinden feyz alabilirler.
0
zekzekus
""Halihazırda Eclipse gibi büyük bir IDE ortamını kurup Java, vb. diller için kullanmakta olanlar arasında Lisp'e heves edenler için anlamlı olabilir, öteki türlü sırf bu eklenti için gidip Eclipse indirip kurmak çok anlamlı görünmüyor.""
Kesinlikle katılıyorum. Eclipse'i zaten kullanlar için çok ama çok tanıdık bir ortam. Cusp sitesinde eklentinin avantajlarından biri olarak Eclipse içindeki proje yönetimi gösteriliyor. Emacs+Slime kombinasyonunda bu olanak ne kadar var bilemiyorum.
""Ayrıca sanki Emacs ve SLIME'a, SBCL yükleme mevzusuna biraz haksızlık yapılmış gibi. Debian ya da Gentoo gibi kaliteli GNU/Linux yazılımlarını kullanan kişiler için SBCL, SLIME, EMACS vs. kurmak misal bir apt-get komutuna bakar. Birkaç dakika sonra sistem emrinize amadedir. Yok eğer MS Windows kullanıyorsanız onun için LispBox, LispWorks, AllegroCL gibi her keseye ve zihniyete uygun anahtar teslim çözümler var.""
Artık windows içinde sorun değil bence. Ben win XP işletim sisteminde SBCL+Emacs+slime kurup çalışır hale getirmek Lispbox olmadanda son derece rahat yapılan bir işlem. Hatta emacs'in şaşırtıcı(benim için) modlarını da kurup genelde sorunsuz kullanmak mümkün.
Kod tamamlama ve tooltips ise neden bilmem (tembellik??) geliştirme ortamları için vazgeçilmesi güç bir özellik gibi geliyor bana.(Bu konuda emacs'de gayet başarılı gerçi.)
Sonuçta Common Lisp ile ilgilenmeye başladığımda ilk iş güzel bir ide aramıştım. Lispworks ve Allegro CL'yi inceledim ama bunların "Express" sürümler olması kimi kısıtlamalarının bulunması ayrıca büyük ihtimalle gerçekten lisanslarını hiç almayacak olmam başka çözümler aramaya itmişti. Bu ortamlardan hemen sonra Eclipse (Java ve Python için kullanıyordum zaten) için bir Lisp eklentisi aramış ama tatmin edici bir şey bulamamıştım.
Belki de tam emacs ile Lisp kodlamaya, gnus ile maillerime bakmaya, ERC ile IRC serverlarına bağlanmaya, sql-mode ile Oracle veritabanına bağlanmaya alışmışken bunu bulmak iyi olmadı ama alışkanlıklardanda kolay vazgeçilemediğini de anlamış oldum.
0
FZ
Belki de tam emacs ile Lisp kodlamaya, gnus ile maillerime bakmaya, ERC ile IRC serverlarına bağlanmaya, sql-mode ile Oracle veritabanına bağlanmaya alışmışken bunu bulmak iyi olmadı ama alışkanlıklardanda kolay vazgeçilemediğini de anlamış oldum.

Gücü hissetmeye başlamışsınız :) Peki ya hiç CEDET, SpeedBar gibi şeylere baktınız mı?

Bir de tabii o Cusp, Eclipse IDE ortamına Emacs metin işleme özelliklerini yani SLIME'dan filan bağımsız, doğal olarak s-exp tabanlı metin işleme özelliklerini de getiriyor mu bilmiyorum.
0
zekzekus
"Gücü hissetmeye başlamışsınız" :)
Evet :)
"Bir de tabii o Cusp, Eclipse IDE ortamına Emacs metin işleme özelliklerini yani SLIME'dan filan bağımsız, doğal olarak s-exp tabanlı metin işleme özelliklerini de getiriyor mu bilmiyorum."

Zannetmiyorum açıkçası biraz kurcalama fırsatım oldu kendisini ama emacs'e mi alıştım bilmeden yoksa daha proje çok mu başlarında, umduğum kadar rahat edemedim. Lisp ile ilgili bir kitapta "Lisp takıntı yapar kendinizi kaptırırsanız öyle gider" (tam olarak böyle değildi cümle) mealinde bir şeyler vardı. Sanırım böyle bir hastalık :) bulaştı banada. Bu Lisp insanı emacs'e de bulaştırıyo sanırım. İşyerimde sql*plus gerektiren işler için emacs+sql-oracle modunu açtığımda şaşıran çok oldu.;)
0
FZ
Zannetmiyorum açıkçası biraz kurcalama fırsatım oldu kendisini ama emacs'e mi alıştım bilmeden yoksa daha proje çok mu başlarında, umduğum kadar rahat edemedim. Lisp ile ilgili bir kitapta "Lisp takıntı yapar

Projenin başlarında olmaları ile ilgisi yok. Çünkü siz SLIME kullandığınızda sadece SLIME ile gelen özellikleri kullanmıyorsunuz, aynı zamanda Emacs'a içkin olan yani hiç SLIME filan olmasa dahi Emacs ile birlikte gelen ve Common Lisp, Scheme, vs. kaynak kodunu düzenlemeyi çok kıvrak hale getiren metin düzenleme özelliklerini kullanıyorsunuz. Cusp geliştiricileri bunu hedefleyeceklerse zaten bir nevi Emacs metin düzenleme işlevselliğini Eclipse IDE metin editörüne katmak gibi iddialı bir şeyi hedefliyor olacaklardır.

kendinizi kaptırırsanız öyle gider" (tam olarak böyle değildi cümle) mealinde bir şeyler vardı. Sanırım böyle bir hastalık :) bulaştı banada. Bu Lisp insanı emacs'e de bulaştırıyo sanırım. İşyerimde sql*plus gerektiren işler için emacs+sql-oracle modunu açtığımda şaşıran çok oldu.;)

Onları şaşırtmaya devam edeceğinizden şüphem yok. Bu arada bir noktaya daha dikkat çekeyim: Emacs ortamında Lisp kodlarken mesela editöre dair ya da SLIME'a dair bir değişiklik yapmak, bir özellik eklemek isterseniz yine bir tür Lisp olan Emacs Lisp ile Emacs'a müdahale edeceksiniz, dolayısı ile benzer zihniyet. Öte yandan Cusp'a katkıda bulunmak isterseniz, Eclipse'e müdahale etmek için yani sanırım Java kullanmanız gerekecek (yanılıyorsam düzeltin), bu da iki zihniyet arasında geçiş yapmak demek, bu bir dezavantaj.
0
FZ
Cusp geliştiricisi gördüğüm kadarı ile Paragent çalışanı. Böyle bir şeyle uğraştığına göre acaba çalışanı olduğu yazılım firması da bazı projeler için CL kullanıyor mudur diye düşündüm bir an. Kullanıyor olsalar da söylerler mi o da ayrı bir konu ;-)
0
tongucyumruk
Sitelerindeki ürün demosuna bakılırsa Uncommon Web kullanıyorlar.
0
FZ
Bilgi için çok teşekkürler, baktım o demoya. Güzel ve rahat kullanılan bir web uygulamasına benziyor. Common Lisp ve UCW bir kez daha birilerine rekabet avantajı sağlıyor gibi...
0
hb
Debian testing uzerinde kurulu Eclipse 3.2'de denedim. Nedense defpackage ile baslayan ifadeleri `eval` etmeye kalkinca, repl yanit vermeyi birakiyor. Cok kurcalayamadim bu yuzden.
Görüş belirtmek için giriş yapın...

İlgili Yazılar

Samantha Kleinberg ile CL-GODB, Common Lisp ve Biyoinformatik Üstüne

FZ

New York Üniversitesi'nden Samantha Kleinberg 2005 yılında Google'ın "Summer of Code" etkinliğine katılmış başarılı yazılımcılardan biri. Kendisi Common Lisp programlama dilini kullanarak CL-GODB projesini geliştirdi. Google ünlülerinden biri oluşu ve Common Lisp kullanmış olması dikkatimizi cezbetti ve her türlü engelip aşıp kendisine detaylı sorularımızı yönelttik. O da bizi kırmadı ve gayet net, konuya dair cevaplar verdi. Yayındayız...

Guy Steele'den John McCarthy röportaj

auselen

Guy Steele OOPSLA 2008'de Lisp'in babası John McCarthy ile bir telefon röportajı gerçekleştirdi.

Object Persistence ve Lisp - Dabble ve Smalltalk

FZ

Şimşekleri üstüme çekmek pahasına böyle bir başlık atıyor ve diyorum ki Bill Clementson yine yapacağını yapmış ve acayip videolar hazırlamış.

Konu bu aralar pek bir revaçta olan ve "e peki nasıl yapacağız biz bu object persistence, serialization işini?" sorusu ile gündeme gelen konu. Bill Clementson en son gerçekleştirdikleri Vancouver Lisp Kullanıcıları Grubu Toplantısı çerçevesinde AllegroCache ile ilgili bir video hazırlamış.

MIT LispM Kaynak Kodunu Kamuya Açıyor

FZ

MIT, LispM kaynak kodunu BSD tarzı bir lisans ile kamuya açıyor. Bu şu demek: Lisp Machines sistemlerinin temel bileşeni artık özgür. BSD lisansı sayesinde de insanlar bundan istedikleri gibi faydalanabilirler.

LISP, Debian Sarge'da en çok kullanılan 4. dil

acemi_

Araştırmanın detayları (pdf)

Debian Sarge'ın boyutunu ve değerini inceleyen bir araştırma yapılmış. Bu araştırmada Debian Sarge'da yer alan yazılımların kaynak kodları ile ilgili bir bölüm var. Araştırmayı yapan kişilere ve bana ilginç gelen bir durum söz konusu... Bu dağıtımı hazırlarken en çok kullanılan dördüncü dil: LISP