dmd support for IDEs

Andrei Alexandrescu SeeWebsiteForEmail at erdani.org
Mon Oct 12 12:31:55 PDT 2009


Walter Bright wrote:
> language_fan wrote:
>> Another point not mentioned here is that modern IDEs use incremental 
>> and interactive compilation model. The compiler should be run as a 
>> persistent background process and parsing should happen perhaps on the 
>> level of the current scope. Re-compiling a million line project after 
>> each key stroke simply makes no sense.
> 
> This would not require recompiling a million lines with every key 
> stroke, unless you are editing a million line module.
> 
>> Even compiling the current module once per key stroke is too slow.
> 
> As you say, it should be done as a background process.
> 
>> Specifying an intermediate json/xml file format is a huge task 
>> considering the amount of language constructs, types etc. available in D.
> 
> It isn't. It's far less work than ddoc is, for example.
> 
>> I'm all for good tool support but as many have already mentioned, the 
>> support would only bring marginal improvements to small scale tools 
>> like vim and emacs. Usually small scale D projects (< 10000 lines of 
>> code) are written with those tools (feel free to prove me wrong). 
>> These are not the kinds of projects large enterprises would use D for, 
>> they use scripting languages for smaller tasks. Thus the overall 
>> improvement is minimal.
> 
> I think the bang for the buck on this is large.

For each snippet of code that doesn't currently compile, I generate a 
red warning in the TDPL draft. Currently there are 28 such red warnings, 
and each may be arbitrarily difficult to fix. There are other issues 
that we know need to be done as soon as yesterday.

IMHO it would be frivolous to spend time on anything else but the 28 
bugs. This XML/JSON generation is like combing one's hair before leaving 
the burning house. Just run! (I'm not saying I don't like combed hair or 
XML/JSON parsing, but the latter is absolutely nothing you need to work 
on now.) Please understand that TDPL is on a crash course and we can't 
have a book without a language (I'm also assuming we can't have a 
language without a book).

Walter, please avoid all distractions and make bringing D in sync with 
the book your sole preoccupation. I am working *extremely* hard on the 
book, and I wish I were seeing the same level of commitment in you.


Andrei



More information about the Digitalmars-d mailing list