The Lemon Parser Algorithm
lemon_parser/lemLexical analysis:
it scans the source code of CFG and load the grammer to the symbol table. If ther is any error in CFG it just report & halts down.
FindRulePrecedences:
Find precedence of symbols & set it
FirstSet:
Compute FIRST(X):
If X is a terminal, then FIRST(X) = {X}
X is a nonterminal, travel all production of X until find first terminal .
Construct Parse Stack
Convert backward propagation link to forward link
FollowSet:
Compute Action table
Compress action table
Report State
Report VCGGraph
ReportFileoutput
GenerateCFGEngine2C Language
Debugging Your Parser:
To debug the CFG created by you, you need to have little knowledge on how lemon parser algorithm works. For this purpose you can generate the report so that you can see the step by step of each and every state
how you grammar has parsed.on_parser_algorthim.html