Age | Commit message (Collapse) | Author |
|
There are multiple subtle errors in the previous version, both in the
codes and in the description of the BNF format. This version should
fix some problems now.
This version can successfully parse the grammar of its own grammar
format, which is quite nice. See test/check_reader.c for parsing this
format.
|
|
I think this is a better practice than the previously used hard-coded
configure option.
|
|
Now we have a working implementation of predicates. It now only
remains to write the parser of grammars. Of course we shall generate
this parser by this parser generator itself, because why not. ;-P
|
|
Previously I used hash tables, which consume too much memory. Now the
critical parts are replaced by a new hand-written library called
"tuple.h". Now we can easily parse larger inputs. I haven't tested
its limits, though.
|
|
Now we need to implement predicates, in order to have practical
applications.
|
|
I now have a working algorithm in test/check_cnp. It can correctly
parse the grammar for an esoteric language called "Brainfuck". This
language does not matter. What matters is that it contains
parentheses. So this shows that at least for grammars as complex as
parentheses, this parser works well. Haha.
|
|
THat file implements support functions for the CNP algorithm, not the
algorithm itself.
|
|
CRF and process descriptors seem to work now. It only remains to
implement the set of pending actions before I can work on the driver
program.
|