Combinator Parsers - From Toys to Tools

Abstract We develop, in a stepwise fashion, a set of parser combinators for constructing deterministic, error-correcting parsers. The only restriction on the grammar is that it is not left recursive. Extensive use is made of lazy evaluation, and the parsers constructed “analyze themselves”. Our new combinators may be used for the construction of large parsers to be used in compilers in practical use.

[1]  William H. Burge,et al.  Recursive Programming Techniques , 1975 .

[2]  S. Doaitse Swierstra,et al.  Deterministic, Error-Correcting Combinator Parsers , 1996, Advanced Functional Programming.

[3]  Jeroen D. Fokker,et al.  Functional Parsers , 1995, Advanced Functional Programming.

[4]  Manuel M. T. Chakravarty Lazy Lexing is Fast , 1999, Fuji International Symposium on Functional and Logic Programming.

[5]  S. Doaitse Swierstra,et al.  Fast, Error Correcting Parser Combinatiors: A Short Tutorial , 1999, SOFSEM.

[6]  E. Meijer,et al.  Monadic parser combinators , 1996 .

[7]  Graham Hutton,et al.  Monadic parsing in Haskell , 1998, Journal of Functional Programming.