I&#x27;ve developed a couple of cool tricks to get very error tolerant parsers (I design&#x2F;build live programming languages). We can go pure shunting yard (precedence parser), which will basically parse anything since it doesn&#x27;t rely on grammar rules. Even if going with grammar based parsing (they are convenient), braces can be matched on tokens in a pre-pass before parsing occurs, eliminating an entire class of difficult to deal with errors, and allowing for brace stickiness in an incremental edit context; no need to rebalance because someone typed an opening paren without brace completion!<p>Though I can&#x27;t help but think that someone will eventually develop an NN-based PL parser that will be much more error tolerant than straight grammar-based implementations could ever be.