An object-oriented LL(1) parser generator
Bernd Kühl, Axel-Toblas Schreiner · ACM SIGPLAN Notices · 2000
This paper describes oops , an object-oriented parser generator implemented in Java [1]. Oops takes a grammar written in EBNF, checks that it is indeed LL(1), i.e., suitable for recursive descent parsing, and produces a parser as a set of serialized objects. A scanner must be provided and classes satisfying certain interfaces can be implemented which the parser uses to build parse trees.The paper discusses the ideas behind oops ---which are not specific to an implementation in Java---and shows the advantages of an object-oriented approach to grammar verification and parsing.