Enki 1.1 Released

BCS BCS at pathlink.com
Wed Jun 14 11:55:32 PDT 2006


pragma wrote:
> Enki 1.1 is now available.
> 
> Documentation (still in progress)
> http://www.dsource.org/projects/ddl/wiki/Enki
> 
> * Download
> http://svn.dsource.org/projects/ddl/downloads/enki.1.1.win32.bin.zip
> http://svn.dsource.org/projects/ddl/downloads/enki.sdk.1.1.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. 
> 
> Enki 1.1 Changes:
> - enhancement: semantic analysis of binding types by search is now in
> declaration order
> - bug: repeated binding declarations in generated parser
> - bug: binding names were output as 'bind_x' in the comments for some
> expressions
> - enhancement: added function-call capability to '@' operator
> - enhancement: added '&' (custom-terminal) operator
> - enhancement: added minimal sourcecode for custom parsers to binary
> distribution
> 
> - EricAnderton at yahoo

Cool, tried it out. Didn't get to far (I haven't used a parser generator 
before, so...). The generated parser still doesn't compile out of the 
box. I dug through the code and added a few imports to the render() 
function to get it to work. Here is a patch of what I did.

*** old\enki\EnkiBackend.d	Wed Jun 14 11:47:30 2006
--- new\sand\EnkiBackend.d	Wed Jun 14 11:49:57 2006
***************
*** 184,189 ****
--- 184,191 ----
   				emit("module " ~ moduleName ~ ";");
   			}
   			emit("debug private import std.stdio;");
+ 			emit("import enki.BaseParser;");
+ 			emit("import enki.types;");
   			foreach(imp; imports){
   				emit("private import " ~ imp ~ ";");
   			}



More information about the Digitalmars-d-announce mailing list