stumpwm: Lisp ile minimalist pencere yöneticisi

0
FZ
stumpwm GNU/Linux ve UNIX türevleri için minimalist bir pencere yöneticisi ve başlangıç noktası şöyle tanıtılıyor: "StumpWM, programcılarının C ile yazılmış ratpoison'dan kaynaklanan hayalkırıklıkları sonucunda ortaya çıktı. ratpoison kullanmaya başladıktan kısa bir süre sonra fark ettik ki sisteme lispimsi emacs tarzı özellikler katıp duruyorduk. C-t : ile devreye giren bir REPL, kancalar ve gittikçe büyüyen bir Common Lisp alt kümesi.

Açık olan şuydu ki ihtiyaç duyduğumuz şey zırt pırt yeniden durdurup başlatmamıza bizi zorlamayan, kolayca hack edilebilir ve özelleştirme imkanı sunan, sıfırdan Lisp ile yazılmış bir pencere yöneticisi idi."

stumpwm ile ilgili eğlenceli bir videoyu burada izleyebilirsiniz.
stumpwm ile ilgili detaylı bilgiler ve ipuçların verildiği wikiye ise http://stumpwm.antidesktop.net/cgi-bin/wiki adresinden erişmek mümkün.

stumpwm pencere yöneticisinin programcılar açısından en güzel özelliklerinden biri sistem çalışırken sistemin koduna müdahale edip sistemi oluşturan Lisp fonksiyonlarını değiştirip 'evaluate' ederek çalışmakta olan sistemi de değiştirebilmek ve böylece sonuçları anında canlı sistem üzerinde görebilmek.

Haskell öğrenmek için xmonad güzel bir motivasyon teşkil etmesi gibi Common Lisp ile ilgilenenler için de güzel bir gelişim rotası olabilir.

Görüşler

0
anonim
Gayet hoş bir çalışma olmuş.

Bunu görünce nezamandan beridir aklımda olan bir proje yeniden canlandı.

konsol uzerinden calisan bir pencere yöneticisi gibi birşey. Burdaki amaç ise sisteme hakim olmayan kullanicilara, ya da hizli bir şekilde sisteme müdahale etmek isteyen adminler için bir nevi tool olmasi.

C üzerinde gelişmek için iyi bir proje olacağını düşünüyordum. Ama bu aralar aklıma geldikçe "Acaba Lisp'e göz kırpsak mı napsak?" diye düşünüyorum :)

Tabii şu anki işimde bolca windows kullanmam nedeni ile biraz daha askıda olabilir.

Yine de Lisp beni dürtüyor :)
(Bunu neden mi yazıyorum? Belki birileri beni biraz daha dürter de bende kımıldanırım :) )
0
FZ
Bence hiç bir dış-dürtü beklemeyin, içinizden gelen dürtüyü takip edin! :)

Konsoldan çalışan derken "screen" gibi bir şeyi mi kast ediyorsunuz?

Bu arada tabii ki MS Windows ortamında da Common Lisp ile pek çok şey yapabilirsiniz her ne kadar özgür yazılım desteği bakımından GNU/Linux'ta geliştirme yapmak bazı bakımlardan daha elverişli olsa da.
0
anonim
Evet screen gibi de diyebiliriz.

Ama daha cok eski DOS/xenix altinda çalışan muhasebe programlari gibi de diyebiliriz.

Fi tarihinde linux sunucu ile cebelleşirken aklıma gelen birşey.

consoldan eski muhasebe programlari gibi text based pencereler bulundurmasi.

Misal sunucu başında gorevlendirilen adama (admin demiyorum özellikle, zira siz sunucuyu kurup gitmişssiniz, gerisi ile o firmanın bir adamı ilgilenir.) derdinizi anlata kadar "Kardeşim gir şu menüye, kullanıcıları seç, ara yazan yere adini yaz, çıktı mı karşına? Bak orda o kullanici ile alakali bilgiler gelecek karsina (user, pas, tam isim, mail, log, falan filan, fisman. Sonra gir mail yazan yere, orda filtre kismina sunu yaz. gibisinden...)."

Ayrıca bu sayede ileride ruh sağlığımı rahatlatırım diyorum :)
Boşuna dememişler "Nekadar bilirsen bil, anlatacakların karşı tarafın anlayacağı kadardır."

Hazir aklima gelmişken, Microsoft'ta yeni sunucu ailesinden bir ürününde grafik arabirim kullanmayip sadece konsol kullanımı sunacak diye hatırlıyorum. Bu türde 3. parti toollar yazan firmalar için iyi bir piyasa oluşabilir, ben de mi ucundan el atsam napsam :D
0
FZ
Metin / konsol tabanlı webmin gibi bir şey kast ediyorsunuz sanırım ;-)

Microsoft'ta yeni sunucu ailesinden bir ürününde grafik arabirim kullanmayip sadece konsol kullanımı sunacak diye hatırlıyorum.

Hatırladığım kadarı ile Windows Server 2008 "base" kurulumda sadece konsol gibi bir şey sunuyordu ama o adımdan sonra her zamanki GUI bileşenlerini kurmak da basit bir işlem. Yani opsiyonel bir durum söz konusu, zorlayıcı değil.
0
anonim

Metin / konsol tabanlı webmin gibi bir şey kast ediyorsunuz sanırım ;-)


Evet, kesinlikle ondan bahsediyorum. :)

Tabii bu işlemleri konsoldan yapip işkence cekmek istememin asıl nedeni orada kullanacağım dile olan hakimiyetimi arttırmak. (Tabii kimileri o dili kavrama adına o dil için bir derleyici yaziyor, orası ayrı konu:) )
Ayrıca sistemi daha yakından tanıma şansını elde etmek.

Her ne kadar bu işi hağla daha C ile yaparım diyorsam da, Lisp cazip olmaya başladı, ne bileyim, tuhaf duygular yaratıyor üzerimde ;)
0
FZ
Her ne kadar bu işi hağla daha C ile yaparım diyorsam da, Lisp cazip olmaya başladı, ne bileyim, tuhaf duygular yaratıyor üzerimde ;)

#lisp'e, comp.lang.lisp'e ve cs-lisp e-posta listesine de bekleriz o halde.
0
bio
Metin / konsol tabanlı webmin gibi bir şey kast ediyorsunuz sanırım ;-)

IBM AIX icin SMITTY (System Management Information Tool) vardi buna benzer. Ister X-Windows'ta, ister ASCII terminalde calisabiliyordu. Hala da vardir herhalde:

http://en.wikipedia.org/wiki/IBM_AIX_SMIT

Görüş belirtmek için giriş yapın...

İlgili Yazılar

Yeni Başlayanlar İçin Common Lisp Geliştirme Ortamı

zekzekus

Common Lisp'e yeni başlayanlar için yapılacak ilk iş bir geliştirme ortamı oluşturmaktır. Bu konuda yeni başlayanlara kolaylık olması için Lispbox gibi hepsi birarada paketler mevcut. Ama özellikle MS Windows kullanıcıları için emacs tarzı bir geliştirme ortamı ve verimi artırmak için genelde yapılması gereken emacs özelleştirmeleri can sıkıcı olabiliyor.

Bağlı Listeler, C, Lisp, Scheme...

FZ

Bağlı listeler programcıların kullanabilecekleri soyutlama araçları arasında önemli yer işgal ederler. Bu veri yapılarını kullanarak veri işleme süreçlerini kolayca yönetmek mümkündür.

Jonathan Bartlett, IBM developerWorks sitesindeki Techniques for using linked lists in C and -- smarter still -- Scheme makalesinde bağlı listelere dair önce C programlama örnekleri vermekte ve daha sonra liste yapısını dilin doğal parçası olarak ele alan Lisp benzeri Scheme dilinde benzer işlerin nasıl daha kolayca ve soyut seviyede yapılabileceğini göstermektedir.

Enterprise Uygulamalarda Common Lisp Faktörü

FZ

cs-lisp grubunca geçen sene Eylül ayında başlatılmış olan Lisp toplantıları serisi uzunca bir aradan sonra Ekim ayında yeni bir toplantı ile devam ediyor.

31 Ekim 2006, Salı akşamı 18:00'da İstanbul Bilgi Üniversitesi Dolapdere Kampüsünde düzenlenecek olan toplantının başlığı Enterprise Uygulamalarda Common Lisp Faktörü.

Toplantının detayları şöyle:

Barack Obama'yı Semantik Web Üzerinden Lisp ile Sorgulamak

FZ

Öyle bir veri tabanı düşünün ki şu sorunuza doğru cevaplar veriyor: "Barack Obama nerede doğmuştu? (Nerede dünyaya gelmişti diye de yazabilirsiniz) Doğduğu yere 15 km uzaklıktaki şehirler ve kasabalar hangileri idi? 2000 yılında bu yerleşim yerlerindeki ortalama fakirlik seviyesi ne idi?"

Bunu tek bir ilişkisel veri tabanı ile kolayca yapabilir misiniz? Yahut daha doğru soru: Neden tek bir veri tabanı olsun ve bu neden ilişkisel olsun? Buyrun semantik web ve RDF kullanın. Nasıl mı?

GNU GO, AJAX ve Common Lisp

FZ

SWGo arka planda GNU Go isimli Go moturunu kullanan, Common Lisp ile geliştirilmiş AJAX tarzı bir web arayüzü. Kaynak kodlarına buradan erişmek mümkün. Kodu geliştiren yazılımcı sadece birkaç aydır Common Lisp ve JavaScript ile uğraştığını söylüyor.