Future of Descent and D Eclipse IDE

Ellery Newcomer ellery-newcomer at utulsa.edu
Wed Jul 14 06:50:11 PDT 2010


On 07/14/2010 05:46 AM, Bruno Medeiros wrote:
> On 12/07/2010 21:31, Ellery Newcomer wrote:
>> On 07/12/2010 02:45 PM, Bruno Medeiros wrote:
>>> So, yeah, as things are, I'm maintaining my approach with Mmrnmrhm:
>>> writing and improving the (very basic) semantic engine from scratch, and
>>> using DLTK.
>>> As for the parser, it will continue to use Descent's parser, although
>>> the parser is already a bit outdated for D2. :/ It would be great if
>>> someone were to volunteer to update it... *wink* *wink* :p
>>
>> sigh, point me at the source
>>
>
> Great, but are you aware what this task entails? In other words, are you
> familiar with descent.compiler? Because this is a Java port of the DMD
> frontend, and I'm not sure how easy it is for someone else other than
> Ary to learn how to do this, there might be quite a bit of private
> knowledge. (we can ask him about this, of course)

Nope, but it doesn't look too much different from dmd's source.

I am, however, intimidated by large codebases wrt build (particularly 
java based ones).

>
>>> But better yet would be to start coding our own custom parser (using a
>>> parser generator like ANTLR for example), that could really be tailored
>>> for IDE needs. In the medium/long term, that's probably what needs to be
>>> done.
>>>
>>
>> What in particular does an IDE need tailored to it?
>
> Well, in terms of *pure functionality*, there is not much else an IDE
> needs, other than making sure it can get all source information (like
> node source text ranges, comments, etc.)
> The big thing that can be tailored is performance: incremental parsing,
> being able to do different kinds of parsing with different levels of
> detail ("sub-parsing"?). Some of these performance features become very
> important for IDE scalability.
> Good error-recovery is also important, although that is also usually
> useful for a compiler (even if not so much as an IDE).
>

hmm, for incremental parsing, ANLTR isn't going to be your friend


More information about the Digitalmars-d-ide mailing list