Looking for champion - std.lang.d.lex

Bruno Medeiros brunodomedeiros+spam at com.gmail
Thu Nov 25 06:01:03 PST 2010


On 24/11/2010 18:48, Andrew Wiley wrote:
>     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.

Interesting, very wise of them to do that.
But not very surprising, Scala is close to the Java world, so they (the 
Scala people) must have known how important it would be to have the best 
toolchain possible, in order to compete (with Java, JDT, also Visual 
Studio, etc.).

-- 
Bruno Medeiros - Software Engineer


More information about the Digitalmars-d mailing list