parser generator

parser generator

A program which takes a formal description of a grammar (e.g. in BNF) and outputs source code for a parser which will recognise valid strings obeying that grammar and perform associated actions. Unix's yacc is a well known example.
References in periodicals archive ?
For parsing Java code, Javaparser (Gesser, 2012), JavaCC parser generator.
"Java compiler compiler (JavaCC): The Java parser generator." Retrieved March 20, 2013, from https://javacc.dev.java.net/.
YACC, a context-free language parser generator, is a look-ahead left-to-right, rightmost-derivation (LALR) parser generator developed by AT&T Bell Laboratory in C language, which is used to generate parsers with a given input file.
The creator of the ANTLR parser generator Parr (computer science, U.
The visual language grammar previously produced, whose productions are specified according to the XPG grammar formalism [12], are successively fed to the XpLR parser generator. This module builds a parser able to analyze the spatial objects according to the constraints specified in the grammar.
of San Francisco) presents a guide on using ANTLR v3 (Another Tool for Language Recognition), a parser generator, to create interpreters and translators for domain-specific languages.
XMLBooster is the leading application-specific XML parser generator that enables developers to create small, fast XML parsers for their application.
Applied to the parsing scenario, a PGG turns a general parser into a parser generator. In this article, we use Thiemann's PGG system [Thiemann 1996a] for the implementation.
On the other hand, you could build a compiler for your own language by reusing parts of the GNU C compiler, gcc, which has a parser generator and a reusable backend for code generation.
Lossy compression of the terminal reduction actions and the invalid reductions permitted by other parser classes (LALR(1), SLR(1)) limit validation to shifts of non-[Epsilon]-subtrees.(15) However, if an LALR or SLR parser generator identifies reductions guaranteed never to be erroneous, reduction validation can be employed on a case-by-case basis.
Two of the most popular are LEX [11], a scanner generator that accepts regular expressions and produces a table-driven recognizer, and Yacc [8], an LALR(1) parser generator. Both of these tools are used principally for phototyping and for the generation of special-purpose processors, but are viewed by many as being too slow [11] or not providing adequate error recovery [8] to be used in a production environment.
The translation tool we have devised is called NewYacc, and is derived from the original UNIX program called yacc (yet another compiler compiler); yacc is a parser generator specification language for LALR(1) grammars [6].