www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - OSGi and D

reply Frank Benoit <keinfarbton googlemail.com> writes:
As Tom (and possbibly others also) showed, DDL [1] can be used for 
dynamic loading and linking D classes. Even unloading should be possible.

With this, i think Equinox [2] could be done in D also. Equinox is an 
implementation of the OSGi, and this is a component technologie for Java.

If we would have such an implementation, this would open the door to a 
variety of possiblities. E.g. a full eclipse rich client plattform port. 
Or the port of other OSGi bundles and combine them with D code.

What do you think?
What kind of obstacles do you see?
Is there a use for this in D?
Would it be worth the effort?

[1] http://www.dsource.org/projects/ddl
[2] http://en.wikipedia.org/wiki/Equinox_OSGi
Jun 21 2008
next sibling parent reply davidl <davidl 126.com> writes:
在 Sun, 22 Jun 2008 07:00:55 +0800,Frank Benoit  
<keinfarbton googlemail.com> 写道:

 As Tom (and possbibly others also) showed, DDL [1] can be used for  
 dynamic loading and linking D classes. Even unloading should be possible.

 With this, i think Equinox [2] could be done in D also. Equinox is an  
 implementation of the OSGi, and this is a component technologie for Java.

 If we would have such an implementation, this would open the door to a  
 variety of possiblities. E.g. a full eclipse rich client plattform port.  
 Or the port of other OSGi bundles and combine them with D code.

 What do you think?
 What kind of obstacles do you see?
 Is there a use for this in D?
 Would it be worth the effort?

 [1] http://www.dsource.org/projects/ddl
 [2] http://en.wikipedia.org/wiki/Equinox_OSGi

The problem of ddl is that ddl only supports OMF iirc . -- 使用 Opera 革命性的电子邮件客户程序: http://www.opera.com/mail/
Jun 22 2008
parent Tom S <h3r3tic remove.mat.uni.torun.pl> writes:
davidl wrote:
 在 Sun, 22 Jun 2008 07:00:55 +0800,Frank Benoit 
 <keinfarbton googlemail.com> 写道:
 
 As Tom (and possbibly others also) showed, DDL [1] can be used for 
 dynamic loading and linking D classes. Even unloading should be possible.

 With this, i think Equinox [2] could be done in D also. Equinox is an 
 implementation of the OSGi, and this is a component technologie for Java.

 If we would have such an implementation, this would open the door to a 
 variety of possiblities. E.g. a full eclipse rich client plattform 
 port. Or the port of other OSGi bundles and combine them with D code.

 What do you think?
 What kind of obstacles do you see?
 Is there a use for this in D?
 Would it be worth the effort?

 [1] http://www.dsource.org/projects/ddl
 [2] http://en.wikipedia.org/wiki/Equinox_OSGi

The problem of ddl is that ddl only supports OMF iirc .

Right, but the last time I had a chance to exchange a few words with Eric, he said he'd be doing an ELF backend. Moreover, there's nothing stopping anyone from adding a new backend to DDL *hint hint*. Doing an ELF backend will probably be an easier task than an OMF one, since the spec is much simpler, IIRC. In the meantime, libdl + SO + Rodin might be used for unsupported platforms. -- Tomasz Stachowiak http://h3.team0xf.com/ h3/h3r3tic on #D freenode
Jun 23 2008
prev sibling next sibling parent Robert Fraser <fraserofthenight gmail.com> writes:
Frank Benoit wrote:
 As Tom (and possbibly others also) showed, DDL [1] can be used for 
 dynamic loading and linking D classes. Even unloading should be possible.
 
 With this, i think Equinox [2] could be done in D also. Equinox is an 
 implementation of the OSGi, and this is a component technologie for Java.
 
 If we would have such an implementation, this would open the door to a 
 variety of possiblities. E.g. a full eclipse rich client plattform port. 
 Or the port of other OSGi bundles and combine them with D code.
 
 What do you think?
 What kind of obstacles do you see?
 Is there a use for this in D?
 Would it be worth the effort?
 
 [1] http://www.dsource.org/projects/ddl
 [2] http://en.wikipedia.org/wiki/Equinox_OSGi

I'm not sure what kind of obstacles/problems, but I would _love_ to see it. I prefer plugin-based architectures for building applications.
Jun 22 2008
prev sibling parent Bruno Medeiros <brunodomedeiros+spam com.gmail> writes:
Frank Benoit wrote:
 As Tom (and possbibly others also) showed, DDL [1] can be used for 
 dynamic loading and linking D classes. Even unloading should be possible.
 
 With this, i think Equinox [2] could be done in D also. Equinox is an 
 implementation of the OSGi, and this is a component technologie for Java.
 
 If we would have such an implementation, this would open the door to a 
 variety of possiblities. E.g. a full eclipse rich client plattform port. 
 Or the port of other OSGi bundles and combine them with D code.
 
 What do you think?
 What kind of obstacles do you see?
 Is there a use for this in D?
 Would it be worth the effort?
 
 [1] http://www.dsource.org/projects/ddl
 [2] http://en.wikipedia.org/wiki/Equinox_OSGi

I think it would be great to have an OSGi implementation in D (not many people would recognize the value in this, but it would be awesome). But it would also be an enormous amount of work. Maybe not much if it's just the OSGi framework, but if other bundles were to be ported (such as some from Eclipse), it would surely be an Herculean effort. But before we even think about that, is DDL even ready for that task? I was under the impression that it wasn't stable or mature enough for such work. Reading the about page (http://www.dsource.org/projects/ddl/wiki/AboutDDL), especially with a statement such as "It is presently in Beta, with a release scheduled for late 2006 ", it seems to be fairly outdated. -- Bruno Medeiros - Software Developer, MSc. in CS/E graduate http://www.prowiki.org/wiki4d/wiki.cgi?BrunoMedeiros#D
Jul 26 2008