In Yacc is dead (2010) Matthew Might and David Darais of the University of Utah, Salt Lake City...

present two novel approaches to parsing context-free languages. The first approach is based on an extension of Brzozowskiâ€™s derivative from regular expressions to context-free grammars. The second approach is based on a generalization of the derivative to parser combinators. The payoff of these techniques is a small (less than 250 lines of code), easy-to-implement parsing library capable of parsing arbitrary context-free grammars into lazy parse forests. Implementations for both Scala and Haskell are provided. Preliminary experiments with S-Expressions parsed millions of tokens per second, which suggests this technique is efficient enough for use in practice.

It seems every problem in computer science can be solved with either one more level of indirection or a derivative.

## Recent comments

10 hours 27 min ago

1 day 19 hours ago

2 days 9 hours ago

2 days 10 hours ago

3 days 7 hours ago

3 days 12 hours ago

3 days 15 hours ago

3 days 22 hours ago

3 days 23 hours ago

4 days 3 hours ago