Goldie Parsing System v0.4 Released - Now for D2

Nick Sabalausky a at a.a
Sun Mar 27 01:11:07 PDT 2011


Goldie is a series of flexible open-source parsing tools, including a D2 
library called GoldieLib. It's compatible with GOLD Parser Builder and can 
be used together with it, but does not require it. In fact, Goldie can be 
used as a cross-platform, shell-scripting-compatible alternative to GOLD 
Parser Builder.

== Links: ==

Main homepage and documentation:
    http://www.semitwist.com/goldie/

Prepackaged downloads:
    http://www.dsource.org/projects/goldie/browser/downloads

The related GOLD Parser Builder:
    http://www.devincook.com/goldparser/

== New in v0.4: ==

    - Switched from D1/Tango to D2/Phobos.

    - New tool: GRMC: Grammar Compiler. Because of this, Goldie no longer 
requires GOLD Parser Builder.

    - Grammars can be compiled not only from GRMC: Grammar Compiler, but 
also through the D API, GoldieLib.

    - No longer requires xfBuild or Rebuild.

    - Executable filenames are now prefixed with 'goldie-' to minimize 
chance of collisions on the PATH.

    - Many misc changes/improvements to tools, API and documentation.

    - Includes a lexing-only D2 grammar: 
http://www.dsource.org/projects/goldie/browser/trunk/lang/dlex.grm

This D2 grammar does have a few small limitations ATM though, which I've 
already described here:
http://www.mail-archive.com/digitalmars-d-learn@puremagic.com/msg11491.html
http://www.mail-archive.com/digitalmars-d-learn@puremagic.com/msg11493.html


== Some of Goldie's benefits: (most are thanks to Goldie's compatibility 
with GOLD Parser Builder) ==

    - Grammars are fully-reusable: No need to create a new grammar for every 
use and every host language. Many grammars are already available.

    - Grammar-agnostic engine: One lexer/parser engine can be used for all 
grammars.

    - Engines for nearly any language or platform: A cross-platform D v2.x 
engine is included via GoldieLib. Engines for many other platforms are also 
available. New engines are easy to write.

    - Dynamic-Style: Dynamic-style lets you write programs that support 
user-created grammars.

    - Static-Style: Static-style provides compile-time checks and extra 
type-safety.

    - Lexing and parsing: Lexing and parsing are defined in the same file 
and handled by one unified tool.

    - Many tools available.

Goldie is fully-usable and has been tested on both Windows and Linux (it 
should also work on OSX and any other platform supported by DMD, but has not 
been tested), although GoldieLib's API is still subject to change. Goldie is 
licensed under The zlib/libpng License.




More information about the Digitalmars-d-announce mailing list