On 04/05/2011 07:55, Jacob Carlborg wrote:
> On 2011-04-29 18:55, Bruno Medeiros wrote:
>> DDT 0.4.2 has been released.
>>>> Software Update Site: http://ddt.eclipselabs.org.codespot.com/hg.updates/>>>> Changelog:
>>>> == DDT 0.4.2 (2011-04-29) ==
>> * Fixed #33, bug with spaces in projects names: made all variables in
>> DMD response file resolve to quote escaped values.
>> * Fixed bug where all D comments where considered DDoc comments for
>> documentation hover.
>> * Fixed limitation where problem hovers where not more prioritary than
>> documentation hovers.
>> * Fixed #37: F2 always brings up empty documentation hover.
>> * Fixed #38: autocomplete crashing / very slow. (Content Assist takes
>> very long to show up when many completion options are available)
>> * Added support for editor code templates in Content Assist.
>> * Fixed bug in cast expression, where the cast type reference was
>> ignored by the parser/semantic-engine;
>> * Fixed bug where DDoc comments where not associated with the
>> corresponding symbol definition if that definition had protection,
>> storage, linkage, or certain other kinds of attributes;
>> * Implemented #35: format immutable keyword and @annotations.
>> * Added (nothrow, pure, shared, immutable) keywords to syntax coloring
>> * Added @annotations to syntax coloring (spaces after @ not supported,
>> any identifier accepted)
>> * Changed syntax coloring example in preferences
>> * Fixed minor Content Assist bug where completions would not appear when
>> requested on certain syntax errors.
>>>>>> Also I've chosen to move the DDT discussion forum from the DSource
>> forums to a Google Groups:
>> http://groups.google.com/group/ddt-ide>> BTW, is there a page, or similar, that compare DDT and Descent? Or if
> you could do a quick listing of the differences.
>
There a few major differences (features implemented in one IDE, but not the other), and many minor/finer-grained differences (same overall feature but with different quality, stability, etc.) which actually do add up.
You can look at the features page for both:
http://code.google.com/a/eclipselabs.org/p/ddt/wiki/Featureshttp://www.dsource.org/projects/descent
although it may not give a complete picture, especially with regards to the minor details. From what I can see and remember, the differences are something like this:
Descent has:
* debugger integration (ddbg and GDC)
* in-editor, as-you-type, semantic error reporting (DDT reports syntax errors only)
* formatter (seems to work quite well)
* type hierarchy
* Some compile-time function evaluation/debugging (seems a bit brittle though)
* TODO/FIXME/XXX tasks tags. (this should be coming soon to DDT)
DDT has:
* integrated builder (a simple one though, delegates to another tool)
* search for references (the inverse of find declaration)
There some other minor differences. Descent has better icon/decoration support, wizards for creating new classes/modules, and other things I don't remember. Then there is code completion (aka Content Assist) which both IDEs support, but the quality varies a lot. Descent's is generally smarter and works in more contexts, and supports completing function calls (IIRC), but is very brittle and more unstable, and very tied to a specific D version (the latest one being D2 as of 1-2 years ago, I think).
PS:
I want to soon add debugger integration to DDT as well, as that is a very nice feature to have, but I have been caught up in other dev tasks/features (mostly more DLTK integration). These tasks are not as important to the IDE user as debugging, but it is important to me as a contributor to finish them first (because there is still DLTK 2.0 functionality I haven't extended/finished, yet DLTK 3.0 is already coming next month, with Eclipse 3.7 (Indigo), and I'm trying to keep up).
--
Bruno Medeiros - Software Engineer

On 2011-05-06 13:52, Bruno Medeiros wrote:
> On 04/05/2011 07:55, Jacob Carlborg wrote:
>> On 2011-04-29 18:55, Bruno Medeiros wrote:
>>> DDT 0.4.2 has been released.
>>>>>> Software Update Site:
>>> http://ddt.eclipselabs.org.codespot.com/hg.updates/>>>>>> Changelog:
>>>>>> == DDT 0.4.2 (2011-04-29) ==
>>> * Fixed #33, bug with spaces in projects names: made all variables in
>>> DMD response file resolve to quote escaped values.
>>> * Fixed bug where all D comments where considered DDoc comments for
>>> documentation hover.
>>> * Fixed limitation where problem hovers where not more prioritary than
>>> documentation hovers.
>>> * Fixed #37: F2 always brings up empty documentation hover.
>>> * Fixed #38: autocomplete crashing / very slow. (Content Assist takes
>>> very long to show up when many completion options are available)
>>> * Added support for editor code templates in Content Assist.
>>> * Fixed bug in cast expression, where the cast type reference was
>>> ignored by the parser/semantic-engine;
>>> * Fixed bug where DDoc comments where not associated with the
>>> corresponding symbol definition if that definition had protection,
>>> storage, linkage, or certain other kinds of attributes;
>>> * Implemented #35: format immutable keyword and @annotations.
>>> * Added (nothrow, pure, shared, immutable) keywords to syntax coloring
>>> * Added @annotations to syntax coloring (spaces after @ not supported,
>>> any identifier accepted)
>>> * Changed syntax coloring example in preferences
>>> * Fixed minor Content Assist bug where completions would not appear when
>>> requested on certain syntax errors.
>>>>>>>>> Also I've chosen to move the DDT discussion forum from the DSource
>>> forums to a Google Groups:
>>> http://groups.google.com/group/ddt-ide>>>> BTW, is there a page, or similar, that compare DDT and Descent? Or if
>> you could do a quick listing of the differences.
>>>> There a few major differences (features implemented in one IDE, but not
> the other), and many minor/finer-grained differences (same overall
> feature but with different quality, stability, etc.) which actually do
> add up.
>> You can look at the features page for both:
> http://code.google.com/a/eclipselabs.org/p/ddt/wiki/Features> http://www.dsource.org/projects/descent>> although it may not give a complete picture, especially with regards to
> the minor details. From what I can see and remember, the differences are
> something like this:
>> Descent has:
> * debugger integration (ddbg and GDC)
> * in-editor, as-you-type, semantic error reporting (DDT reports syntax
> errors only)
> * formatter (seems to work quite well)
> * type hierarchy
> * Some compile-time function evaluation/debugging (seems a bit brittle
> though)
> * TODO/FIXME/XXX tasks tags. (this should be coming soon to DDT)
>> DDT has:
> * integrated builder (a simple one though, delegates to another tool)
> * search for references (the inverse of find declaration)
>> There some other minor differences. Descent has better icon/decoration
> support, wizards for creating new classes/modules, and other things I
> don't remember. Then there is code completion (aka Content Assist) which
> both IDEs support, but the quality varies a lot. Descent's is generally
> smarter and works in more contexts, and supports completing function
> calls (IIRC), but is very brittle and more unstable, and very tied to a
> specific D version (the latest one being D2 as of 1-2 years ago, I think).
>>> PS:
> I want to soon add debugger integration to DDT as well, as that is a
> very nice feature to have, but I have been caught up in other dev
> tasks/features (mostly more DLTK integration). These tasks are not as
> important to the IDE user as debugging, but it is important to me as a
> contributor to finish them first (because there is still DLTK 2.0
> functionality I haven't extended/finished, yet DLTK 3.0 is already
> coming next month, with Eclipse 3.7 (Indigo), and I'm trying to keep up).
>
Ok, thanks for the list. I was wondering if it's time to try DDT instead of Descent. I've basically given up on Descent, too slow and buggy. Content assist is very nice but isn't not worth it if it takes 5-10 seconds to complete, and that is when eclipse doesn't freeze completely.
--
/Jacob Carlborg

On 06/05/2011 13:52, Jacob Carlborg wrote:
> On 2011-05-06 13:52, Bruno Medeiros wrote:
>> Ok, thanks for the list. I was wondering if it's time to try DDT instead
> of Descent. I've basically given up on Descent, too slow and buggy.
> Content assist is very nice but isn't not worth it if it takes 5-10
> seconds to complete, and that is when eclipse doesn't freeze completely.
>
As you can see DDT is less featured, but it should be /fairly/ better in terms of performance and stability (especially with stuff like http://code.google.com/a/eclipselabs.org/p/ddt/issues/detail?id=38 fixed). But I haven't been working on large (or even medium-sized) D projects to know for sure. It would be nice to hear the opinion of others who have extensively tried either IDEs.
--
Bruno Medeiros - Software Engineer

On 5/6/11 7:52 PM, Bruno Medeiros wrote:
> On 04/05/2011 07:55, Jacob Carlborg wrote:
>> On 2011-04-29 18:55, Bruno Medeiros wrote:
>>> DDT 0.4.2 has been released.
>>>>>> Software Update Site:
>>> http://ddt.eclipselabs.org.codespot.com/hg.updates/>>>>>> Changelog:
>>>>>> == DDT 0.4.2 (2011-04-29) ==
>>> * Fixed #33, bug with spaces in projects names: made all variables in
>>> DMD response file resolve to quote escaped values.
>>> * Fixed bug where all D comments where considered DDoc comments for
>>> documentation hover.
>>> * Fixed limitation where problem hovers where not more prioritary than
>>> documentation hovers.
>>> * Fixed #37: F2 always brings up empty documentation hover.
>>> * Fixed #38: autocomplete crashing / very slow. (Content Assist takes
>>> very long to show up when many completion options are available)
>>> * Added support for editor code templates in Content Assist.
>>> * Fixed bug in cast expression, where the cast type reference was
>>> ignored by the parser/semantic-engine;
>>> * Fixed bug where DDoc comments where not associated with the
>>> corresponding symbol definition if that definition had protection,
>>> storage, linkage, or certain other kinds of attributes;
>>> * Implemented #35: format immutable keyword and @annotations.
>>> * Added (nothrow, pure, shared, immutable) keywords to syntax coloring
>>> * Added @annotations to syntax coloring (spaces after @ not supported,
>>> any identifier accepted)
>>> * Changed syntax coloring example in preferences
>>> * Fixed minor Content Assist bug where completions would not appear when
>>> requested on certain syntax errors.
>>>>>>>>> Also I've chosen to move the DDT discussion forum from the DSource
>>> forums to a Google Groups:
>>> http://groups.google.com/group/ddt-ide>>>> BTW, is there a page, or similar, that compare DDT and Descent? Or if
>> you could do a quick listing of the differences.
>>>> There a few major differences (features implemented in one IDE, but not
> the other), and many minor/finer-grained differences (same overall
> feature but with different quality, stability, etc.) which actually do
> add up.
>> You can look at the features page for both:
> http://code.google.com/a/eclipselabs.org/p/ddt/wiki/Features> http://www.dsource.org/projects/descent>> although it may not give a complete picture, especially with regards to
> the minor details. From what I can see and remember, the differences are
> something like this:
>> Descent has:
> * debugger integration (ddbg and GDC)
> * in-editor, as-you-type, semantic error reporting (DDT reports syntax
> errors only)
> * formatter (seems to work quite well)
> * type hierarchy
> * Some compile-time function evaluation/debugging (seems a bit brittle
> though)
> * TODO/FIXME/XXX tasks tags. (this should be coming soon to DDT)
* Descent is not developed anymore :-P
>> DDT has:
> * integrated builder (a simple one though, delegates to another tool)
> * search for references (the inverse of find declaration)
>> There some other minor differences. Descent has better icon/decoration
> support, wizards for creating new classes/modules, and other things I
> don't remember. Then there is code completion (aka Content Assist) which
> both IDEs support, but the quality varies a lot. Descent's is generally
> smarter and works in more contexts, and supports completing function
> calls (IIRC), but is very brittle and more unstable, and very tied to a
> specific D version (the latest one being D2 as of 1-2 years ago, I think).
>>> PS:
> I want to soon add debugger integration to DDT as well, as that is a
> very nice feature to have, but I have been caught up in other dev
> tasks/features (mostly more DLTK integration). These tasks are not as
> important to the IDE user as debugging, but it is important to me as a
> contributor to finish them first (because there is still DLTK 2.0
> functionality I haven't extended/finished, yet DLTK 3.0 is already
> coming next month, with Eclipse 3.7 (Indigo), and I'm trying to keep up).
For the debugger, you can check out Descent code. I think you should be able to use most of it, it was made from scratch and almost without using any of the copied JDT logic. It made a front-end for gdb and ddbg (IIRC the name), so you should be able to implement the interfaces just fine to support another debugger.
Descent was too an ambitious project and coupled with the way D evolves (which I don't quite like, but I'm not developing my own language either, so...) made me quit it.

On 2011-05-06 16:36, Ary Manzana wrote:
> Descent was too an ambitious project and coupled with the way D evolves
> (which I don't quite like, but I'm not developing my own language
> either, so...) made me quit it.
Descent was a great IDE but I can see why you quit. It's to hard and takes to much time to keep up with the changes to the language.
--
/Jacob Carlborg

On 06/05/2011 15:36, Ary Manzana wrote:
> For the debugger, you can check out Descent code. I think you should be
> able to use most of it, it was made from scratch and almost without
> using any of the copied JDT logic. It made a front-end for gdb and ddbg
> (IIRC the name), so you should be able to implement the interfaces just
> fine to support another debugger.
Yeah, I know, and I'll definitely look at Descent code when working the debugger functionality, but I just haven't got to that task yet.
--
Bruno Medeiros - Software Engineer