Development environment (WAS: generative programming and debugging)
Jacob Carlborg
doob at me.com
Wed Oct 19 23:20:17 PDT 2011
On 2011-10-19 21:35, Marco Leise wrote:
> Am 19.10.2011, 13:40 Uhr, schrieb Gor Gyolchanyan
> <gor.f.gyolchanyan at gmail.com>:
>
>> I've yet to see a single worthwhile IDE for D.
>> I think it would be a great idea to have a standard reference IDE
>> (just as DMD is the standard reference compiler).
>> These things would be so useful:
>> Inline compile-time ddoc and mixin views would make development
>> process so much easier.
>> Inline compile-time non-ctfe-able code highliting.
>> Automatic import detector, based on visible import paths.
>
> Seems like I'm not the only one who thought of an IDE recently that is
> fast and can give hints on functions. Except I thought of highlighting
> pureness, safeness and the like by changing the background color slightly.
> The next thing is all the features of Eclipse that have to do with the
> code you write or running / debugging. Like regex search and replace,
> finding references to methods/fields, refactoring, code templates, class
> outlines, type search, jump to declaration etc.
> A difficulty for IDEs seems to be the complexity of D's CTFE and return
> type inference. DDT for example cannot give auto-completion hints on
> auto variables. That needs to be addressed.
> I'd also like very much a way to set up multiple targets for a project:
> - typical debug build
> - typical release build
> - unit test build
> - external launcher (i.e. dump MySQL table structure and generate D import)
> - run another program that uses my program (through IPC, as a debuggee)
> - run a DLL host using my library (also debuggable)
> - cross-compiling (currently x86-32/-64 for DMD)
>
> Especially a D frontend written in D would be a good start for a
> cross-platform IDE and other derived work. Ideally I think it should not
> be an external program or parse everything in one step. It could be a
> lot faster if it worked closely together with the editor itself and only
> updated the syntax tree where the user edited code. Changes in
> templates/functions/classes have to be propagated to the users of that
> code.
Yet again, what's needed is a D compiler (or at least a front end) that
can be used as a library.
--
/Jacob Carlborg
More information about the Digitalmars-d
mailing list