www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.announce - Parser Generator APaGeD 0.3 beta release

reply Jascha Wetzel <"[firstname]" mainia.de> writes:
APaGeD - Attributed Parser Generator for D

http://apaged.mainia.de

This is a major upgrade for ALLPaGeD. It has been renamed to APaGeD,
because it's not restricted to LL parsers anymore.

- generates LALR(1)-based GLR parsers and LL parsers
- generates linear-time first-longest-match lexical analyzers
- intuitive, curly-brace-style grammar syntax with embedded D code
- supports non-regular whitespace grammar (e.g. nested comments)
- semantic analysis allows inherited and synthetic attributes, multiple
passes, etc.
- supports imports for structuring of large grammars
- extensive debugging facilities
- supports error recovery
- explicit error messages or...
- automatically generated error messages: "file(line): found A, expected
B, C or D"
- export grammar specification for documentation

See the documentation for details.
Aug 23 2007
next sibling parent reply BLS <nanali nospam-wanadoo.fr> writes:
WOW !!!!!!!!!!!!
Written in D 1x ?
Well asking for the SEAT D grammar is probabely a bit too much. But 
however, will you offer us the grammar file ?
Bjoern
Aug 23 2007
next sibling parent Christian Kamm <kamm.incasoftware shift-at-left-and-remove-this.de> writes:
 Well asking for the SEAT D grammar is probabely a bit too much. But
 however, will you offer us the grammar file ?

I think it is included in the seatd downloadable. Check src/seatd/parser.apd. Christian
Aug 23 2007
prev sibling parent Jascha Wetzel <"[firstname]" mainia.de> writes:
BLS wrote:
 WOW !!!!!!!!!!!!
 Written in D 1x ?
 Well asking for the SEAT D grammar is probabely a bit too much. But 
 however, will you offer us the grammar file ?
 Bjoern

it's written in D2.0, but the generated parsers also compile with D1.0. the SEATD grammar file is available with the source!? it's in src/seatd/parser.apd
Aug 23 2007
prev sibling next sibling parent reply Manfred Nowak <svv1999 hotmail.com> writes:
Jascha Wetzel wrote

 See the documentation for details.

Seems, that APaGeD gegenrates GLR-parsers by default, but I cannot see that in the documentation. Minor bug: When the parser is to accept epsilon only, then there are no lexems defined, then no mainLexer will be generated, then the compilation will fail. -manfred
Aug 28 2007
parent Jascha Wetzel <firstname mainia.de> writes:
Manfred Nowak wrote:
 Jascha Wetzel wrote
 
 See the documentation for details.

Seems, that APaGeD gegenrates GLR-parsers by default, but I cannot see that in the documentation. Minor bug: When the parser is to accept epsilon only, then there are no lexems defined, then no mainLexer will be generated, then the compilation will fail. -manfred

i'll fix both in the next release, thanks.
Aug 29 2007
prev sibling parent reply =?ISO-8859-1?Q?Manuel_K=F6nig?= <ManuelK89 gmx.net> writes:
Nice work, thanks!
minor bug: when calling apaged without any arguments, it segfaults.
changing line 29 in main.d to this fixes this:

optionsLoop: while ( args.length > 1 )
Sep 25 2007
parent Jascha Wetzel <firstname mainia.de> writes:
Manuel König wrote:
 Nice work, thanks!
 minor bug: when calling apaged without any arguments, it segfaults.
 changing line 29 in main.d to this fixes this:
 
 optionsLoop: while ( args.length > 1 )

thanks! i'll patch it into the upcoming 0.4 release.
Sep 25 2007