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
23 min 17 sec ago
45 min 22 sec ago
1 hour 21 min ago
1 hour 28 min ago
1 hour 44 min ago
1 hour 51 min ago
2 hours 5 min ago
2 hours 31 min ago
3 hours 8 min ago
3 hours 33 min ago