dunnart
所属分类:collect
开发工具:D
文件大小:0KB
下载次数:0
上传日期:2017-07-14 04:25:40
上 传 者:
sh-1993
说明: LALR(1)D编程语言的分析器生成器,
(LALR(1) Parser Generator for the D Programming Language,)
文件列表:
Makefile (392, 2017-07-13)
bootstrap.d (67545, 2017-07-13)
cli.d (2261, 2017-07-13)
ddlib/ (0, 2017-07-13)
ddlib/lexan.d (33482, 2017-07-13)
ddlib/templates.d (10917, 2017-07-13)
ddpg.d (3345, 2017-07-13)
dunnart.ddgs (16689, 2017-07-13)
errors.d (503, 2017-07-13)
examples/ (0, 2017-07-13)
examples/calc/ (0, 2017-07-13)
examples/calc/Makefile (230, 2017-07-13)
examples/calc/calc.d (435, 2017-07-13)
examples/calc/parser.ddgs (2494, 2017-07-13)
examples/calc/test_data (67, 2017-07-13)
examples/calc2/ (0, 2017-07-13)
examples/calc2/Makefile (230, 2017-07-13)
examples/calc2/calc.d (435, 2017-07-13)
examples/calc2/parser.ddgs (2469, 2017-07-13)
examples/calc2/test_data (67, 2017-07-13)
examples/evaluater/ (0, 2017-07-13)
examples/evaluater/Makefile (166, 2017-07-13)
examples/evaluater/evaluator.d (541, 2017-07-13)
examples/evaluater/parser.ddgs (1643, 2017-07-13)
examples/evaluater/test_input (64, 2017-07-13)
examples/test_inject/ (0, 2017-07-13)
examples/test_inject/Makefile (230, 2017-07-13)
examples/test_inject/calc.d (435, 2017-07-13)
examples/test_inject/expr.ddgsi (1225, 2017-07-13)
examples/test_inject/fields.ddgsi (40, 2017-07-13)
examples/test_inject/header.ddgsi (588, 2017-07-13)
examples/test_inject/line.ddgsi (197, 2017-07-13)
examples/test_inject/parser.ddgs (196, 2017-07-13)
examples/test_inject/precs.ddgsi (60, 2017-07-13)
examples/test_inject/skips.ddgsi (19, 2017-07-13)
examples/test_inject/test_data (67, 2017-07-13)
examples/test_inject/tokens.ddgsi (310, 2017-07-13)
grammar.d (43930, 2017-07-13)
... ...
Dunnart D Parser Generator (ddpg)
=================================
Enhanced LALR(1) Parser Generator for the D Programming Language.
This (ddgp) tool is an implementation in D of the LALR(1) parser generators
described in "Compilers - Principles, Techniques and Tools" (Aho, Sethi
and Ullman, 1986) (aka the red dragon book) with modifications to allow
conflict resolution using boolean predicates and a built in lexical
analyser. It produces a single D file as output.
The [specification language](https://github.com/pwil3058/dunnart/wiki/Specification-Language)
for dunnart (in itself) is described (in the
specification language for dunnart) in the file dunnart.ddgs which was
used to implement the ddpg program recursively via a three stage
bootstrap process (one stage now permanently retired).
Building ddgp
=============
To build __ddgp__ execute the following:
```
$ make
```
in the base directory.
Synopsis
========
```
ddgp [
]
Options:
-f|--force:
overwrite existing output file
-m | --module=:
insert a "module" statement in the output file using name
-v | --verbose:
produce a full description of the grammar generated
-o | --output= | --prefix=:
if using a path name based on the module name prefix it with path
-e | --expect=:
expect exactly "number" total conflicts
-s | --states=:
write a textual description of the parser's states to "path"
to assist in resolution of any conflicts
```
Output File Name
================
If the _--module_ option is used the output filename will be derived
from the module name (prefixed with the argument to the _--prefix_
option if present) unless it is overruled by the _--output_ option.
If neither the _--module_ nor _--output_ option are present, the output
filename will be constructed by replacing the input filename's suffix
with "d".
In no event, will an existing file be overwritten unless the _--force_
option is used.
License
=======
Dunnart D Parser Generator (ddpg) is licensed under the Boost Software
License, Version 1.0. (See accompanying file LICENSE_1_0.txt or
[copy at](http://www.boost.org/LICENSE_1_0.txt)).
近期下载者:
相关文件:
收藏者: