Thread overview
Goldie Parsing System v0.7 - API, 64-bit, Git
Jan 29, 2012
Nick Sabalausky
Jan 31, 2012
Bernard Helyer
Jan 31, 2012
Nick Sabalausky
Feb 18, 2012
Nick Sabalausky
Jan 31, 2012
Manfred Nowak
Jan 31, 2012
Nick Sabalausky
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