dmd support for IDEs and the D tool chain

Jacob Carlborg doob at me.com
Sat Oct 17 04:24:15 PDT 2009


On 10/16/09 19:18, Lutger wrote:
> Jacob Carlborg wrote:
>
>> Here is my thoughts and what I think is needed to build a really good
>> IDE and maybe get some attention from the enterprise. It's really not
>> enough for the compiler to output some json for an IDE to use, the whole
>> tool chain needs to be revised.
>
> I think this list is what the toolchain might look like after it already has
> gotten some attention, not a requirement of what is needed.
>
> This is a cut-down list with some comments:
>
>> Compiler:
>>    * Supports all major platform
>>    * 32 and 64bit support
>>    * Doesn't have annoying bugs like forward reference errors and problem
>>      with the linker
>>    * Can build dynamic libraries
>>    * Supports incremental builds
>
> Clearly many programming languages manage without a compiler written in
> their native language and I doubt clang is even used in enterprise context.

As I said later in the message, that it would be the optimal and 
everything doesn't have to be built in D. Like D Clang is quite new and 
it doesn't need to be built like Clang just to attract the enterprise 
but I think it would be easier to build an IDE if the compiler was built 
more like Clang. BTW Clang is shipped with the Developer Tools on Mac.

>> Compiler or separate tool:
>>    * Automatically tracks all dependencies and builds the
>>      application/library (like DSSS)
>
> We got this, dsss just has to be revived by someone.
>
>> GUI library:
>>    * Supports all major platforms (mac, linux, win)
>>    * Uses native controls (as much as possible) to draw its controls
>>    * Supports (de)serializing controls (Glade, nib)
>
> Not sure it needs to be written in D. Many languages use bindings and
> wrappers just fine. We already have QtD, DWT, wxWindows, DFL and GtkD. One
> of those is a port (DWT) and one is native D (DFL). The GUI situation has
> been so rapidly improved, it's not an impediment anymore imho.

GtkD doesn't use native controls, DFL is only for windows (last I checked).

>> IDE:
>>    * Be able to show syntax and semantic errors as you type
>>    * Autocompletion
>>    * Refactoring
>>    * Building
>>    * Supports incremental builds
>>    * Basically something like Eclipse JDT
>
> Descent is probably the closest, in some aspects it even destroys C++ IDE's
> (compile time stuff) already. However one or two more IDE's or very good
> editors would likely help.
>
> This would be my shortlist:
> - a polished descent which supports D2
> - dmd switch to ELF on windows and support for 64-bit there
> - dsss redux
> - gdc for embedded, also some more support from phobos for systems
> programming?



More information about the Digitalmars-d mailing list