Announce: Enki 1.0

pragma pragma_member at pathlink.com
Tue Jun 6 11:59:48 PDT 2006


As a gift to the community, for not getting DDL ready on time, I would like to
announce the release of Enki 1.0:

* Documentation (still in progress)
http://www.dsource.org/projects/ddl/wiki/Enki

* Download
http://svn.dsource.org/projects/ddl/downloads/enki.1.0.win32.bin.zip
http://svn.dsource.org/projects/ddl/downloads/enki.sdk.1.0.src.zip


Enki is a frontend parser generator that uses an annotated EBNF syntax to
produce .d sourcefiles.  More details can be found at the link above.  Without
getting too deep into specifics, it adheres to the following philosophy:

- Self-hosting
- Generates readable, parser frontend code only
- Provides a basic (and replaceable) text parser backend for quick use
- Avoids the reinvention of its host language: D.
- Relies on user supplied D code as directly as possible, where it is strongest
- Generate D code where possible, where D is at its worst and most verbose
- Support the majority of use cases with the minimal amount of tweaking

The self-hosting aspect of the frontend is the key, as it is the main
proof-of-concept for the application.  The following three files demonstrate
this, as they are all representations of the various stages of how Enki handles
its input.

* Enki BNF that defines the Enki frontend:
http://www.dsource.org/projects/ddl/browser/trunk/enki/enki.bnf

* The generated frontend from the BNF:
http://www.dsource.org/projects/ddl/browser/trunk/enki/EnkiParser.d

* Hardcoded parse-tree used to build Enki from scratch:
http://www.dsource.org/projects/ddl/browser/trunk/enki/bootstrap.d

- EricAnderton at yahoo



More information about the Digitalmars-d-announce mailing list