dmd support for IDEs and the D tool chain

Tomas Lindquist Olsen tomas.l.olsen at gmail.com
Fri Oct 16 03:58:07 PDT 2009


On Fri, Oct 16, 2009 at 12:06 PM, Jacob Carlborg <doob at me.com> 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.
>
> Compiler:
>  * Written in D
>  * Supports all major platform
>  * 32 and 64bit support
>  * Doesn't have annoying bugs like forward reference errors and problem
>   with the linker
>  * Built with and IDE in mind
>  * Can be built as a (dynamic)library
>  * Can build dynamic libraries
>  * Supports incremental builds
>  * Has clearly separate components, especially the front- and back-end.
>  * Has a license that allows it to be built into an IDE and/or shipped
>   with an IDE
>  * Basically something like LLVM + Clang
>
> Compiler or separate tool:
>  * Automatically tracks all dependencies and builds the
>   application/library (like DSSS)
>
> GUI library:
>  * Written in D
>  * Supports all major platforms (mac, linux, win)
>  * Uses native controls (as much as possible) to draw its controls
>  * Supports (de)serializing controls (Glade, nib)
>
> IDE:
>  * Written in D
>  * Be able to show syntax and semantic errors as you type
>  * Autocompletion
>  * Refactoring
>  * Building
>  * Supports incremental builds
>  * Basically something like Eclipse JDT
>
> GUI builder:
>  * Supports (de)serializing controls (Glade, nib)
>  * Basically something like Interface Builder, Glade
>
>
> All of the above would be the most optimal. For example, everything don't
> have to be built in D but for building an IDE in D I think that it would be
> easier.
>
> What we have now and what I think is the closest match:
>
> Compiler: LDC
>  * Missing most of the mentioned things
>  * Needs better platform support
>  * At least the back-end is built like this
>
> We have DSSS and xfbuilder (or what it's called)
>
> GUI library: DWT
>  * There are some bugs in the mac version
>  * Doesn't support (de)serializing controls
>  * Not built in a D-way
>  * Maybe too heavy
>
> IDE: Descent
>  * Missing some features like refactoring
>  * Only supports building using an external tool
>  * Needs to improve the syntax and semantic errors
>  * Needs to improve the performance if possible
>
> GUI builder: Interface Builder, Entice Designer, Glade, whatever Qt uses
>  * To my knowledge none of the above supports a GUI library like the
>   one mentioned
>
>
> Any comments, thoughts?
>
> /Jacob Carlborg
>
>

GtkD supports Glade.



More information about the Digitalmars-d mailing list