Talk:Tail recursive parser
![]() | Computer science Unassessed | ||||||||||||||||
|
I can find very little web information on this subject, I hope someone finds it useful. I find it to be an interesting parsing method that is not discussed as much. I used it for a science fair project, and the result turned out quite nice, and pretty simple.
Okay, I changed this page to be a little less overly complex. Thanks to ard on #dhell of dynamichell.org for helping me with the sentences.
Merge into recursive descent parser
I don't see any reason for this to be it's own article. This is a common optimization that the dragon book doesn't bother to give a distinct name. Even the recursive descent parser article's implementation uses this technique. I don't see anything interesting in the Dr. Dobb's article that isn't already covered in the dragon book. 15.227.137.69 21:50, 16 February 2007 (UTC)
This is a common technique
Which is the reason for the repetition in the EBNF notation in the first place.
Stupid and ambiguous grammar
The grammar is a) stupid and b) ambiguous. Either you do normal left-recursion for such operator-expressions:
F → F + I | I
or you use the LL(k)-compatible workaround:
F → I (+ I)*
But the example does not make sense… Could you explain it?