Sciweavers

WCRE
2003
IEEE

RegReg: a Lightweight Generator of Robust Parsers for Irregular Languages

13 years 9 months ago
RegReg: a Lightweight Generator of Robust Parsers for Irregular Languages
In reverse engineering, parsing may be partially done to extract lightweight source models. Parsing code containing preprocessing directives, syntactical errors and embedded languages is a difficult task using context-free grammars. Several researchers have proposed some form of lexical analyzer to parse such code. We present a lightweight tool, called RegReg, based on a hierarchy of lexers described by tagged regular expressions. By using tags, the automatically generated parse tree can be easily manipulated. The ability to control the matching rule mechanism for each regular expression increases efficiency and disambiguation choices. RegReg is lightweight as it uses a minimal number of features and its implementation uses only deterministic automaton. It has been implemented in Scheme which allows extending the tool in a functional programming style. We demonstrate how RegReg can be used to implement island and fuzzy parsing. RegReg is publicly available under a BSD-like license.
Mario Latendresse
Added 05 Jul 2010
Updated 05 Jul 2010
Type Conference
Year 2003
Where WCRE
Authors Mario Latendresse
Comments (0)