Thread overview
D lexer in Java
May 01, 2013
Jeremy Powers
May 01, 2013
Jacob Carlborg
May 01, 2013
Jacob Carlborg
May 01, 2013
Gyula Gubacsi
May 02, 2013
Bruno Medeiros
May 02, 2013
Jeremy Powers
May 02, 2013
Bruno Medeiros
May 01, 2013
Spent some time a couple months ago hacking on a D plugin for IntelliJ.
 Haven't gotten very far, but did result in a working lexer.  My day job
got significantly crazier, so haven't had a chance to work on it lately.

Wanted to have quite a bit more done before releasing into the wild, but thought I'd throw something out there before I head out the door to Dconf.

On github:

https://github.com/elendel-/intelliD


It started out as a rewrite of the mono-d lexer, though ended up reorganizing/rewriting things a bit as I went along.  Whole thing is 'licensed' in the public domain, so hopefully someone will find it useful.


(Resending this from a different email address, as first one didn't appear to go through.  Apologies if it shows up twice.  Also, my hotel has free internet, yay)


May 01, 2013
On 2013-05-01 05:52, Jeremy Powers wrote:
> Spent some time a couple months ago hacking on a D plugin for IntelliJ.
>   Haven't gotten very far, but did result in a working lexer.  My day
> job got significantly crazier, so haven't had a chance to work on it lately.
>
> Wanted to have quite a bit more done before releasing into the wild, but
> thought I'd throw something out there before I head out the door to Dconf.
>
> On github:
>
> https://github.com/elendel-/intelliD
>
>
> It started out as a rewrite of the mono-d lexer, though ended up
> reorganizing/rewriting things a bit as I went along.  Whole thing is
> 'licensed' in the public domain, so hopefully someone will find it useful.

Cool. There are a couple of already written lexers/parsers in Java for other plugins. Desccent and DDT for Eclipse. Descent is dead and I don't know the status of DDT.

Descent was from the D1 days and is still the best IDE plugin for D I've heard of. It supported lexical, syntax and semantic analyzer. With features such as as:

* Show errors as you type (even semantic errors)
* Autocompletion with semantic support
* Compile time view. See how scope-statement is lowered to try-catch-finally. See how mixins are expanded and so on
* Compile time debugger

http://dsource.org/projects/descent/
http://code.google.com/a/eclipselabs.org/p/ddt/

-- 
/Jacob Carlborg
May 01, 2013
On 2013-05-01 05:52, Jeremy Powers wrote:
> Spent some time a couple months ago hacking on a D plugin for IntelliJ.
>   Haven't gotten very far, but did result in a working lexer.  My day
> job got significantly crazier, so haven't had a chance to work on it lately.
>
> Wanted to have quite a bit more done before releasing into the wild, but
> thought I'd throw something out there before I head out the door to Dconf.
>
> On github:
>
> https://github.com/elendel-/intelliD
>
>
> It started out as a rewrite of the mono-d lexer, though ended up
> reorganizing/rewriting things a bit as I went along.  Whole thing is
> 'licensed' in the public domain, so hopefully someone will find it useful.

You should post to the announce group as well. More people will see it there.

-- 
/Jacob Carlborg
May 01, 2013
I can offer you my former little parser project based on ANTLR v3: https://github.com/progician/d-antlr-grammar

I originally written to replace the parser in DDT as the DDT parser originally is Descent, which in turn is a trans-coded bit from the D compiler.


On 1 May 2013 10:26, Jacob Carlborg <doob@me.com> wrote:

> On 2013-05-01 05:52, Jeremy Powers wrote:
>
>> Spent some time a couple months ago hacking on a D plugin for IntelliJ.
>>   Haven't gotten very far, but did result in a working lexer.  My day
>> job got significantly crazier, so haven't had a chance to work on it
>> lately.
>>
>> Wanted to have quite a bit more done before releasing into the wild, but thought I'd throw something out there before I head out the door to Dconf.
>>
>> On github:
>>
>> https://github.com/elendel-/**intelliD<https://github.com/elendel-/intelliD>
>>
>>
>> It started out as a rewrite of the mono-d lexer, though ended up reorganizing/rewriting things a bit as I went along.  Whole thing is 'licensed' in the public domain, so hopefully someone will find it useful.
>>
>
> You should post to the announce group as well. More people will see it there.
>
> --
> /Jacob Carlborg
>



-- 
Gyula Gubacsi / progician <https://github.com/progician>


May 02, 2013
On 01/05/2013 04:52, Jeremy Powers wrote:
> Spent some time a couple months ago hacking on a D plugin for IntelliJ.
>   Haven't gotten very far, but did result in a working lexer.  My day
> job got significantly crazier, so haven't had a chance to work on it lately.
>
> Wanted to have quite a bit more done before releasing into the wild, but
> thought I'd throw something out there before I head out the door to Dconf.
>
> On github:
>
> https://github.com/elendel-/intelliD
>
>
> It started out as a rewrite of the mono-d lexer, though ended up
> reorganizing/rewriting things a bit as I went along.  Whole thing is
> 'licensed' in the public domain, so hopefully someone will find it useful.
>
>
> (Resending this from a different email address, as first one didn't
> appear to go through.  Apologies if it shows up twice.  Also, my hotel
> has free internet, yay)
>

Hi Jeremy. As I mentioned in a previous thread I'm working on a new Java parser for DDT. Maybe I should have kept people up to date, but the lexer is pretty much done, it was completed in the beggining of February. The parser is about 50-60% done.

This work is available in the parser branch of the DDT repo:
http://code.google.com/a/eclipselabs.org/p/ddt/source/list?name=parser

The lexer in particular is here:
http://code.google.com/a/eclipselabs.org/p/ddt/source/browse/org.dsource.ddt.dtool/src/dtool/parser/DeeLexer.java?name=parser

It's well-tested, and complete, apart from one missing aspect which is checking that escape sequences in string and character literals are valid.

-- 
Bruno Medeiros - Software Engineer
May 02, 2013
Wonderful!

It looks like you started this work right after I looked at DDT and decided to do my own thing.  Feel free to take a look at my code and grab anything that is useful.  I'll try to find some time and swap out for your parser, maybe abandon my efforts in favor of yours.


On Thu, May 2, 2013 at 7:35 AM, Bruno Medeiros < brunodomedeiros+dng@gmail.com> wrote:

> On 01/05/2013 04:52, Jeremy Powers wrote:
>
>> Spent some time a couple months ago hacking on a D plugin for IntelliJ.
>>   Haven't gotten very far, but did result in a working lexer.  My day
>> job got significantly crazier, so haven't had a chance to work on it
>> lately.
>>
>> Wanted to have quite a bit more done before releasing into the wild, but thought I'd throw something out there before I head out the door to Dconf.
>>
>> On github:
>>
>> https://github.com/elendel-/**intelliD<https://github.com/elendel-/intelliD>
>>
>>
>> It started out as a rewrite of the mono-d lexer, though ended up reorganizing/rewriting things a bit as I went along.  Whole thing is 'licensed' in the public domain, so hopefully someone will find it useful.
>>
>>
>> (Resending this from a different email address, as first one didn't appear to go through.  Apologies if it shows up twice.  Also, my hotel has free internet, yay)
>>
>>
> Hi Jeremy. As I mentioned in a previous thread I'm working on a new Java parser for DDT. Maybe I should have kept people up to date, but the lexer is pretty much done, it was completed in the beggining of February. The parser is about 50-60% done.
>
> This work is available in the parser branch of the DDT repo: http://code.google.com/a/**eclipselabs.org/p/ddt/source/**list?name=parser<http://code.google.com/a/eclipselabs.org/p/ddt/source/list?name=parser>
>
> The lexer in particular is here:
> http://code.google.com/a/**eclipselabs.org/p/ddt/source/**
> browse/org.dsource.ddt.dtool/**src/dtool/parser/DeeLexer.**
> java?name=parser<http://code.google.com/a/eclipselabs.org/p/ddt/source/browse/org.dsource.ddt.dtool/src/dtool/parser/DeeLexer.java?name=parser>
>
> It's well-tested, and complete, apart from one missing aspect which is checking that escape sequences in string and character literals are valid.
>
> --
> Bruno Medeiros - Software Engineer
>


May 02, 2013
On 02/05/2013 16:56, Jeremy Powers wrote:
> Wonderful!
>
> It looks like you started this work right after I looked at DDT and
> decided to do my own thing.  Feel free to take a look at my code and
> grab anything that is useful.  I'll try to find some time and swap out
> for your parser, maybe abandon my efforts in favor of yours.
>
>

Yeah, always better to combine efforts. Let me know if you find any issues.


-- 
Bruno Medeiros - Software Engineer