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
2 hours 16 min ago
15 hours 27 min ago
1 day 7 hours ago
1 day 17 hours ago
1 day 18 hours ago
1 day 19 hours ago
1 day 22 hours ago
2 days 4 hours ago
2 days 4 hours ago
2 days 6 hours ago