Right now, what's the most important for the success and adoption

BCS ao at pathlink.com
Fri Sep 28 17:39:00 PDT 2007


Reply to Robert,

> BCS Wrote:
> 
>> -IDE
>> 
> You're the first one in the topic to mention this. I agree with you
> quite a bit on this, as all the current IDEs, while sufficient for
> writing code, still have their faults. For example, no IDE at present
> can do code completion with this:
> 
> mixin(ctFunction());
> 
> char[] ctFunction()
> {
> return "struct Foo { int bar,baz; }";
> }
> Foo foo;
> foo. // Here's where I'd want code completion to come up and suggest
> "bar" and "baz"
> }
> That's a trivial example, but all the compile-time stuff (templates,
> CTFE, mixins, etc.) is hard to debug properly because there's no real
> way to see the compile-time results. IDEs that have the compiler's
> complete semantic knowledge about these things can provide a whole
> host of features targeted at a mostly D-specific problem (I know C++
> has templates, too, and I'm not sure what IDEs do to make working with
> them easier).
> 

That reminds me of another thing

-compile time debugging

Figuring out what exactly is happening at compile time is a nightmare. Things 
I'd like to see include:
- Breakpoint debugging of template work
- Step through of template selection (list the overload options and list 
why each one did or didn't match)
- visual unrolling of tuple foreach and static ifs
- "what if" mode for templates (select a template, force the parameters to 
different things, and see what happens, all without change code)

These tools would all have to be part of a IDE for them to be useful tools.





More information about the Digitalmars-d mailing list