tinyap 1.4-0 (Default branch) |
|
|
tinyap is a recursive descent parser with backup that outputs an abstract syntax tree (AST). Unlike in most parsers, the grammar is data. Tinyap uses an AST that represents a grammar to parse its input text. The factory default for the grammar is tinyap's grammar description language itself, so one can parse a grammar description and directly use the parse output to parse some other text written in the described language. Tinyap also features a plugin mechanism for grammars, which allows for dynamic modular grammars. Finally, it provides an interface to walk down the ASTs and to write external plugins to visit the nodes.
License: GNU General Public License v2
Changes:
Tinyap now supports AST "unparsing" (or "reverse
parsing"). This turns AST back to text, with some
formatting support. It can be useful for data
(un)serialization and prettyprinting source code.
|