January 29, 2012
Goldie v0.7 is now released.

Goldie is a series of open-source parsing tools, including an optional D programming language library called GoldieLib. Goldie is compatible with GOLD Parser Builder and can be used either together with it, or as an alternative to it.

In this version:
(Tested to work on: DMD 2.052 - DMD 2.056, and partially DMD 2.057 as
described below.)

    - Added a new Beginner's Tutorial:
http://www.semitwist.com/goldie/Start/Tutorial/
    - Switched version control from SVN/DSource to Git/BitBucket.
    - GoldieLib: Added Token.get and Token.getRequired.
    - GoldieLib: Added traverse for parse tree traversal.
    - GoldieLib: Added op overloads as a preferred alternative to Token.subX
for accessing subtokens in dynamic-style.
    - GoldieLib: Fixed: RangeException on Token.matches("<blah>", null) (ie,
when attempting to match an empty rule with matches).
    - Fixed Issue #20: Fails on 64-bit builds. (But note the still-open #21:
64-bit 'staticlang' and 'sampleGenericParse' blocked by DMD Issue #6983)
    - Many documentation updates/improvements including (in addition to the
usual misc and API updates) an updated FAQ.
    - StaticLang: Creates the output path if it doesn't already exist.
    - Renamed "Parse Anything" sample to "Sample Generic Parse" (to avoid
confusion with the Parse tool).
    - Added support for DMD 2.056. On DMD 2.057, dynamic-style works, but
not static-style or grammar compiling due to DMD Issue #7375.
    - Now uses SemiTwist D Tools tag 'goldie-v0.7'.

Homepage:
    http://www.semitwist.com/goldie

ChangeLog:
    http://www.semitwist.com/goldie/ChangeLog/

Beginner's Tutorial:
    http://www.semitwist.com/goldie/Start/Tutorial/

Download Prepackaged Releases (win-x86, linux-x86, linux-x64 and
source-only):
    http://www.semitwist.com/download/goldie/


January 31, 2012
Is this capable of handling D's grammar?
January 31, 2012
"Bernard Helyer" <b.helyer@gmail.com> wrote in message news:tjkdnhzvvdawzsrgcycd@dfeed.kimsufi.thecybershadow.net...
> Is this capable of handling D's grammar?

Not yet, unfortunately[1] :(  LALR(1) can admittedly be somewhat limiting, I need to take it to something like LALR(k) or GLR (I have another idea up my sleeve, too...).

It is capable of tokenizing D though, and such a grammar for that is included (lang/dlex.grm). Although, until I add support for the GOLD v5 features, nested comments have to be handled semi-manually - ie, go through the lexer's resulting token array, if you find a '/+' token then skip to the appropriately matching '+/' token. Should be easy, but of course it'd be better to not even have to bother.

I need to prioritize that stuff. That is the #1 most-asked question (...hmm...you'd think I'd have my #1 most asked question in the FAQ, but I don't ATM...)

[1] CS theory says that you probably could, but the resulting grammar wouldn't be very useful.


January 31, 2012
Bernard Helyer wrote:

> Is this capable of handling D's grammar?

Do you know of any inambigouus grammar for D?

-manfred
January 31, 2012
"Manfred Nowak" <svv1999@hotmail.com> wrote in message news:Xns9FEBAA144F566svv1999hotmailcom@65.204.18.192...
> Bernard Helyer wrote:
>
>> Is this capable of handling D's grammar?
>
> Do you know of any inambigouus grammar for D?
>

Yes, Goldie (and GOLD) don't yet have a mechanim for disambiguation.


February 18, 2012
"Nick Sabalausky" <a@a.a> wrote in message news:jg8s41$2s7d$1@digitalmars.com...
>
> It is capable of tokenizing D though, and such a grammar for that is included (lang/dlex.grm). Although, until I add support for the GOLD v5 features, nested comments have to be handled semi-manually - ie, go through the lexer's resulting token array, if you find a '/+' token then skip to the appropriately matching '+/' token. Should be easy, but of course it'd be better to not even have to bother.
>

Oh, also, it can't properly lex the Delimited Strings yet: http://dlang.org/lex.html#DelimitedString


Top | Discussion index | About this forum | D home