Bryan's Home Page - Work - Publications - Scribblings - Photo Album - Humor - Stats Massachusetts Institute of Technology International Conference on Functional Programming, October 4-6, 2002, Pittsburgh Packrat parsing is a novel technique for implementing parsers in a lazy functional programming language. A packrat parser provides the power and flexibility of top-down parsing with backtracking and unlimited lookahead, but nevertheless guarantees linear parse time. Any language defined by an LL( k ) or LR( k ) grammar can be recognized by a packrat parser, in addition to many languages that conventional linear-time algorithms do not support. This additional power simplifies the handling of common syntactic idioms such as the widespread but troublesome longest-match rule, enables the use of sophisticated disambiguation strategies such as syntactic and semantic predica...