soulng
Lexer and parser generator tool for C++
...The slg tool takes a .lexer file that contains the description of a lexical analyzer as input and produces C++ source code for a lexical analyzer as output. The produced lexical analyzer is a finite state machine that recognizes patterns described as regular expressions and return corresponding token identifiers to the parser. The spg
tool takes .parser files that contain descriptions of parsers as input and produces C++ source code for parser classes as output. The parser generator produces a recursive descent top-down backtracking parser that use the lexical analyzer generated by slg to tokenize the input.