Looking for champion - std.lang.d.lex

Andrew Wiley debio264 at gmail.com
Wed Nov 24 10:48:08 PST 2010


>
> On 24/10/2010 00:46, bearophile wrote:
>
>> Walter:
>>
>>
>>  As we all know, tool support is important for D's success. Making tools
>>> easier
>>> to build will help with that.
>>>
>>> To that end, I think we need a lexer for the standard library -
>>> std.lang.d.lex.
>>> It would be helpful in writing color syntax highlighting filters, pretty
>>> printers, repl, doc generators, static analyzers, and even D compilers.
>>>
>>
>> This is a quite long talk by Steve Yegge that I've just seen (linked from
>> Reddit):
>> http://vimeo.com/16069687
>>
>> I don't suggest you to see it all unless you are very interested in that
>> topic. But the most important thing it says is that, given that big software
>> companies use several languages, and programmers often don't want to change
>> their preferred IDE, there is a problem: given N languages and M
>> editors/IDEs, total toolchain effort is N * M. That means N syntax
>> highlighters, N indenters, N refactoring suites, etc. Result: most languages
>> have bad toolchains and most IDEs manage very well only one or very few
>> languages.
>>
>> So he has suggested the Grok project, that allows to reduce the toolchain
>> effort to N + M. Each language needs to have one of each service: indenter,
>> highlighter, name resolver, refactory, etc. So each IDE may link (using a
>> standard interface provided by Grok) to those services and use them.
>>
>> Today Grok is not available yet, and its development is at the first
>> stages, but after this talk I think that it may be positive to add to Phobos
>> not just the D lexer, but also other things, even a bit higher level as an
>> indenter, highlighter, name resolver, refactory, etc. Even if they don't use
>> the standard universal interface used by Grok I think they may speed up the
>> development of the D toolchain.
>>
>> Bye,
>> bearophile
>>
>
>From watching this, I'm reminded that in the Scala world, the compiler can
be used in this way. The Eclipse plugin for Scala (and I assume the Netbeans
and IDEA plugins work similarly) is really just a wrapper around the
compiler because the compiler can be used as a library, allowing a rich IDE
with minimal effort because rather than implementing parsing and semantic
analysis, the IDE team can just query the compiler's data structures.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puremagic.com/pipermail/digitalmars-d/attachments/20101124/1dd72c99/attachment.html>


More information about the Digitalmars-d mailing list