I don't see how you can can parse a recursive data structure with this approach, e.g. parse the grammar for s-expressions.