Future of Descent and D Eclipse IDE

Bruno Medeiros brunodomedeiros+spam at com.gmail
Mon May 24 04:38:28 PDT 2010


Hi.

I'm now in a position where I can dedicate a lot of free time for an 
open source project, and I'm seriously considering going back working on 
the D Eclipse IDE project. I worked on Mmrnmhrm a couple of years ago, 
as part of my thesis, which led to some restrictions on the kinds of 
tasks I should work on. Now I don't have that issue, I have (almost) 
complete freedom on what I can work on, and in particular I would like 
to unify the two current efforts for a D Eclipse IDE: Descent and 
Mmrnmhrm, as there is a lot of work being put into both (especially 
Descent ^^ )

Now, Ary has been inactive for quite a while, and he said he wasn't 
interested in working in Descent any more :( . This means I'm currently 
the only Eclipse developer, so I could just do things in the way I'm 
thinking of, but Ary, I would still like to get your input, because I 
hope one day you might be interested in coming back to Descent 
development. :)

There a few issues and ideas I would like to establish for the future D 
Eclipse IDE project. But for now I'll just mention one which I think is 
quite important:

* I think the DMD frontend Java port should be separated into its own 
plugin/bundle, and not be part of the descent.core plugin. The first 
reason is for abstraction and modularization: This project is quite 
distinct on its own, and separation would make it a bit easier for 
people to understand it, and work on it alone (especially since it would 
require almost no knowledge about Eclipse), or for it to be used in 
other projects (like it is now for Mmrnmhrm). Also this allows the 
plugin to not be a singleton, so there could be several plugin instances 
with different versions running at the same time.

Separation purely for modularization should be reason enough, but if you 
are not convinced, there is a more serious issue which regards licenses: 
descent.core source is (heavily) based on the JDT core, which means this 
derived code must be licensed under the EPL. Same for the other Descent 
plugins. But the DMD frontend is licensed under the Artistic License. So 
unless the frontend port could be relicensed as EPL as well, then it 
should be in its own plugin. This is so that each plugin has its own 
license which applies to all its underlying code, to make things clearer.

Ary, I would like to know if by any chance you are interested in doing 
that separation in the near future. If not, I can do it myself, but it 
might take a bit longer.


Cheers

-- 
Bruno Medeiros - Software Engineer


More information about the Digitalmars-d-ide mailing list