|
|
|
|
|
by torginus
64 days ago
|
|
The thing about parsing (and algorithms in general) is that it can be hair raisingly complex for arbitrary grammars, but in practice, people have recently discovered, that making simple, unambiguous grammars, and avoiding problems, like context dependent parsing, make the parsing problem trival. Accepting such constraints is quite practical, and lead to little to no loss of power. In fact, most modern languages are designed with little to no necessary backtracking and simple parsing, Go and Rust being noteworthy examples. |
|
But to understand how to generate grammars for languages that are easy to parse, you have in my opinion to dive quite deeply into parsing theory to understand which subtle aspects make parsing complicated.