2012-03-13 20 views
9

Soruma göre, Peter Kriens: What If OSGi Ran Your Favorite Language tarafından bir yazı tarafından tetiklenir?Can Haskell OSGi uyguluyor mu?

Yani, Haskell OSGi specifications uygulamak mümkün mü? Değilse neden?

+0

Yolu serin, ilgili makale __Dynamic Applications From the Ground Up__ http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.113.1406&rep=rep1&type=pdf, Haskell'in Yi editörü "dinamik" zemin yukarı. – drozzy

+0

Tek bir Haskell uygulamasında OSGi'yi uygulamaktan mı yoksa Dağıtılmış OSGi uServices'ı diğer OSGi örneklerine maruz bırakmaktan ve tüketmekten mi bahsediyorsunuz? – oconnor0

+1

Bence bunun cevabın bir parçası olacağını düşünüyorum: bunun yapılabileceği farklı yolları ya da her birinin artıları ve eksileriyle birlikte ne anlama geleceğini araştırırdı. – drozzy

cevap

1

Sana Haskell (soru 1) için bir OSGi bulunup bulunmadığı da soruyorsunuz sanırım, daha doğrusu Haskell OSGi şartname uygulamak için kullanılıp kullanılamayacağını daha (soru 2).

Yaklaşık 1: Birkaç katmanlık katmanı oluşturmadan mümkün olduğunu düşünmüyorum. Bir programlama dili için OSGi'yi uygulamak için gerekli en önemli dil özelliği, çalışma zamanında modüllerin dinamik yüklenmesi ve boşaltılmasıdır. Şimdi, OSGi - basit bir şekilde - bunu başarmak için Java sınıfı yükleyicileri kullanmak için akıllı bir yoldur, kod geliştirici bunu fark etmez, ancak "import com.mypackage ..." kullanmaya devam eder.

Yeterli Haskell'i tanımıyorum, ama Haskell'in harici bir kütüphane için Haskell yorumlayıcısının içine girmesi için kanca noktaları olduğundan şüphe duyuyorum ki, yükleme modülleri başka bir haskell dosyasına yakalanabilir ve dinamik olarak yeniden yönlendirilebilir.

Yaklaşık 2: Dil desteğinden taviz vermek istiyor ancak dize hazırlıkları ile yükleme modüllerini kullanmakta zorlanıyorsanız, OSGi'nin temel fikirlerini uygulamak ve bunu Haskell'de kullanmak güzel bir proje olacaktır.

(kapat ruhu içinde OSGi kadar) bir eklenti-çerçevenin sevdiğim uygulama Java Plugin Framework olduğunu. Daha az kod, beklenebilir.

+0

Java Eklentisi Çerçevesinde harika bir ipucu isteyebilirsiniz - Ben bunu bilmiyordum! OSGi'ye izin verilmeyen gelecekteki projelerim için harika bir küçük kütüphane gibi görünüyor. – drozzy

+0

OSGi'nin en havalı yönü (en çok parçalanan parçalar) hizmetler. JPF, Apache Felix OSGi çerçevesinin yaklaşık yarısı büyüklüğündedir, ancak bu ek baytlar için resmi bir standart, yan yana versiyonlama, büyüyen bir eko sistem ve hizmetler elde edersiniz. –

İlgili konular