|Building Parsers with Java|
|By Steven John Metsker|
|Publisher||: Addison Wesley|
|Date Published||: March 01, 2001|
Parser building is a powerful programming technique that opens a world of opportunity for designing how users interact with applications. By creating mini-languages, you can precisely address the requirements of your application development domain. Writing your own parsers empowers you to access a database more effectively than SQL to efficiently control the movement of an order through its workflow, to command the actions of a robot, and to control access privileges to transactions in a system. The repertoire of today's professional programmer should include the know-how to create custom languages.
Building Parsers with Java(TM) shows how to create parsers that recognize custom programming languages. This book and its accompanying CD provide an in-depth explanation and clearly written tutorial on writing parsers, following the Interpreter Design Pattern. An easy-to-follow demonstration on how to apply parsers to vital development tasks is included, using more than a hundred short examples, numerous UML diagrams, and a pure Java parser toolkit to illustrate key points.
You will learn:
How to design, code, and test a working parser
How to create a parser to read a data language, and how to create new computer languages with XML
How to translate the design of a language into code
How to accept an arithmetic formula and compute its result
How to accept and apply matching expressions like th* one
How to use tokenizers to define a parser in terms of logical nuggets instead of individual characters
How to build parsers for a custom logic language like Prolog
How to build parsers for a custom query language that goes beyond SQL
How to construct an imperative language that translates text into commands that direct a sequence of actions
The CD contains all of the examples and the parser toolkit, including more than three hundred Java classes and their corresponding javadoc. The CD also provides example programs for the new logic, query, and imperative languages that this book introduces.
With the information, methods , and tools in this book/CD package, you can create new computer languages that exactly fit your domain. You can nestle a new language into any niche, defining how your users interact with computers.