Genişletilebilir Programlama Dilleri: 21. yy. İçin Tahminler

0
FZ
ACM tarafından yayınlanan QUEUE dergisinin son sayısının konusu programlama dilleri. Toronto Üniversitesi'nden Dr. Gregory V. Wilson'ın dergiye gönderdiği Extensible Programming for the 21st Century (21. yüzyıl için genişletilebilir programlama) yazısı Internet'teki değişik platformlarda ışık hızı ile yayıldı ve bitmek bilmez tartışmalara bir yenisi eklendi. FM olarak sonsuz+1 mantalitesine uyup sevgili okurlarımızı bundan haberdar etmemek ve bir başka teknik (sosyolojik, psikolojik, politik, kısaca bilgisayar dünyası ile ilgili) tartışmaya yol açmamak düşünülemezdi!
Makale aslında yeni sayılmaz, orjinali burada yayınlanmış olan bir makalenin başka bir sürümü. Tartışmanın odaklandığı noktalardan biri de XML'nin yepyeni bir şey olarak gösteriliyor oluşu ve kodun bu şekilde depolanmasının pek çok şeyi kolaylaştıracağı iddiası (orjinal makalede Scheme ve Lisp'e göndermeler var ve XML'in neden tutup daha genel ve benzer yapıları içeren Scheme ve Lisp s-ifadelerinin neden tutmadığı, vs.). Pek çok bilgisayar programcısı ve bilgisayar bilimcisi tüyleri diken diken olmuş şekilde buna karşı çıkıyor. Tepki gösteren Lisp programcılarıdan birinin eğlenceli bir alıntısı: "Lisp yorumlayıcınızı biraz değiştirip normal parantez yerine köşeli parantez kullanmasını sağlayın ve sonra en güncel XML teknolojisini kullanan ürünü/programlama dilini geliştirdiğinizi söyleyerek piyasaya çıkın, ismini Enterprise XML 2.0 (EXML 2.0) koyun ve 50.000$'a pazarlamaya başlayın."

Yazı ile ilgili olarak QUEUE dergisinde çıkan eleştirilere buradan erişebilirsiniz. Bir başka detaylı ve ufuk açıcı (aynı zamanda bazı bilinen şeylerin nasıl yepyeni fikirlermiş gibi pazarlandıklarına dair fikir veren) tartışma da comp.lang.lisp grubunda takip edilebilir.

XML konusunda enteresan bir bilgi ise, "Lisp Makinaları mı, hahaha, olur mu öyle saçma şey yahu, bir programlama diline özgü bir donanım, peh!" diye tepki vermiş insanları şaşırtacak bir sayfa: LispMachinesAreComingBack - but not the way you like! (Lisp Makinaları Geri Dönüyor - ama beklediğiniz şekilde değil!). Sayfadaki eleştirilerden sonra karşınıza çıkan XML'e özgü, özel bir makina. DataPower firması tarafından üretilmiş bir XML makinası. XML parsing, XML şema doğrulama, XPath yönlendirme, XSLT dönüşümleri, XML sıkıştırma, vs. yapan bir makina. ;-) Dr. Wilson'ın makalesinde verilen genişletilebilir sözdizim örnekleri, Lisp ve Scheme dünyasında bunların nasıl yapıldığı ve yavaş yavaş Java gibi yaygın dillere de uyarlanmaya çalışıldığı açıklamalar dikkat çekici. Programların kaynak kodlarının XML olarak saklanmasının programcıların işlerini gerçekten kolaylaştırması ve üretkenliği arttırması ümidiyle...

Not: Bu makale bağlamındaki yorumları, tartışmaları takip ederken karşılaştığım enteresan ve yeni bir kitabın bağlantılarını da paylaşmak istedim: Concepts, Techniques, and Models of Computer Programming. Yazarlara göre bu hacimli kitap Mozart programlama sistemini kullanarak temel ve önemli programlama paradigmalarını detaylı ve aynı zamanda pratik olarak işliyor. Kitaba dair yorumlardan biri bu kitabın bu yüzyılın "Mor Kitap"ı olabileceği yönünde!

Görüşler

0
FZ
Konu ile ilgili gezinirken bulduğum birkaç enteresan bağlantıyı paylaşmak istedim:

Microsoft MSXML bileşenini tasarlamış programcının günlüğünden: Where XML goes astray... [nothing-more.blogspot.com]

XML eleştirileri ve karşı eleştirileri: Xml Sucks [c2.com]

XML ile ilgili problemleri ama bunlara rağmen XML'nin neden kullanılması gerektiğini anlatan güzel bir sunum: Does XML Suck? Or: Why XML is technologically terrible, but you have to use it anyway?
0
FZ
ilk iki URL düzgün gelmemiş, düz yazı olarak vereyim bir de:

http://nothing-more.blogspot.com/2004/10/where-xml-goes-astray.html

http://c2.com/cgi/wiki?XmlSucks
Görüş belirtmek için giriş yapın...

İlgili Yazılar

Bir Açık Yazılım - JmxMonitor

malkocoglu_2

JmxMonitor, Java JMX standartını kullanan ve bir veya daha fazla servisi izlemek (monitoring) için kullanılabilecek bir yazılımdır.

http://jmxmonitor.sourceforge.net

Java JMX standartı, uygulamanızın istatistiklerini MBean temelli basit Java nesneleri üzerinden dısarıya afişe etmenizi sağlıyor. Bu istatistik MBean'leri işleme konulduktan sonra, JmxMonitor genelci bir yaklaşımla (generic) herhangi bir uygulamadaki tüm MBean'leri listeleyip, admin'e "gözlemek istediklerim" adlı bir liste olusturmasına izin vermektedir. Gözlenmesine karar verilen makina/port/obje/attribute dörtlüsü için bir eşik değeri (threshold) girildikten sonra, JmxMonitor arka plan süreci tarafindan periyodik olarak esasa değeri bu eşik değerine karşılık kontrol eder. Eşik değer ihlalleri, ana sayfadan ve e-mail ile sistem yöneticisine bildirilecektir.

Lego MindStorms Uzaktan Kumanda Projesi

FZ

Lego MindStorms setlerinin en büyük dezavantajlarından biri, RCX'de bulunan hafızanın (32 KB) ileri düzey projeler geliştirmek için yetersiz olmasıdır. Bu sorunu önlemenin yolu ise RCX'de çalışması planlanan algoritmaların bilgisayarda çalıştırılıp, algoritmanın çıktısı olan motor, sensör hareketlerinin RCX`e gönderilmesidir.

Lego MindStorms Setlerinin bu amaç için kızıl ötesi donanımı ve LeJOS'un Lego Kulesi ile RCX arasında haberleşmeyi sağlayan APIleri mevcuttur fakat haberleşme için kızıl ötesinin kullanılıyor olması kısıtlayıcıdır çünkü kızıl ötesi haberleşmesi 1-2 metre mesafe ile sınırlı kalmakla beraber kızıl ötesi alıcı/verici ledlerinin birbirlerini görme zorunluluğu olmaktadır.

Munin ile ağ izleme

tongucyumruk

Birçok ortamda kullanılan bilgisayar ağlarının gerek sayısının gerekse genişliğinin artması sonucunda ağ üzerindeki sistemleri izlemeye yönelik yazılımlara olan ihtiyaç artmıştır. Bu belgede, bahsedilen türden bir ağ izleme programı olan Munin'in nasıl kurulacağı ve bu programın yardımıyla kişisel ev ağlarından geniş alan ağlarına kadar her tür ağın nasıl izlenebileceği anlatılmaktadır.

Eclipse İçin Türkçe İmla Denetimi Eklentisi: Musahhih

FZ

Yusuf Karagöl, Zemberek tabanlı ve Eclipse içinde javadoc, yorum ve karakter katarlarında Türkçe imla denetimi yapan Musahhih isimli bir eklenti geliştirmiş.

Kaynak: http://zembereknlp.blogspot.com/

Design Patterns: Tasarım Şablonları ve Programlama Dillerinin Kötü Yönleri

FZ

Geçen sene Eylül ayında, Volkan Yazıcı programlama dünyasının sıcak konularından biri olan tasarım şablonlarına yani 'design patterns' konusuna değinmişti:

Merhaba, comp.lang.lisp listesinde "This may be a nonsensical question, but I was wondering if it is idiomatic to apply common design patterns to lisp applications." kaşıntısı ile başlayan bir tartışmalar dizisi oldukça ilgimi çekti -- şüphesiz ki bunda bu dönem almaya başladığım Aspect-Oriented Software Development dersinin de etkisi olmuştur -- ve sizin ile oradan çok ufak bir mesajı paylaşmak istedim.


Tasarım Şablonları, nam-ı diğer Design Patterns mevzusu epey bir süredir sıcak konular arasında. Bu gibi durumlarda sık sık karşılaştığımız gibi konu basit bir teknik konu olmaktan çıkıp pek çok yanlış anlamayı, çok çeşitli felsefi bakış açılarını, alakasız yerlere dallanıp budaklanmayı, düpedüz mantıksal hataları, politik ve ekonomik savaşları bünyesinde barındırmaya başlıyor. Acaba neden?