Programming language processors in Java: compilers and interpreters
โ Scribed by David Watt, Deryck Brown
- Publisher
- Prentice Hall
- Year
- 1999
- Tongue
- English
- Leaves
- 438
- Edition
- 1st edition
- Category
- Library
No coin nor oath required. For personal study only.
โฆ Synopsis
David A Watt and Deryck F BrownProgramming Language Processors in JavaCompilers and InterpretersThis book provides a gently paced introduction to techniques for implementing programming languages by means of compilers and interpreters, using the object-oriented programming language Java. The book aims to exemplify good software engineering principles at the same time as explaining the specific techniques needed to build compilers and interpreters.Features The book shows clearly how a simple compiler can be decomposed into a syntactic analyzer, a contextual analyzer, and a code generator, communicating via an abstract syntax tree. The book is accompanied by a complete working compiler and interpreter, provided via the Internet, and free of charge for educational use. The book contains numerous exercises, together with sample answers to selected exercises. It also contains a number of suggested projects, involving extensions to the accompanying compiler. All examples in the book are expressed in Java, and the compiler and interpreter are structured using object-oriented design patterns.David Watt teaches algorithms and data structures, programming languages, and software design. Deryck Brown teaches compilers, object-oriented programming, operating systems, and software engineering.
โฆ Table of Contents
Cover......Page 1
Contents......Page 3
Preface......Page 9
1. Introduction......Page 15
2. Language Processors......Page 40
3. Compilation......Page 69
4. Syntactic Analysis......Page 87
5. Contextual Analysis......Page 150
6. Run-Time Organization......Page 187
7. Code Generation......Page 264
8. Interpretation......Page 319
9. Conclusion......Page 348
A. Answers to Selected Excercises......Page 373
B. Informal Specification of the Programming Language "Triangle"......Page 400
C. Description of the Abstract Machine "TAM"......Page 416
D. Class Diagrams for the Triangle Compiler......Page 426
๐ SIMILAR VOLUMES
Implementing a programming language means bridging the gap from the programmer's high-level thinking to the machine's zeros and ones. If this is done in an efficient and reliable way, programmers can concentrate on the actual problems they have to solve, rather than on the details of machines. But u
The need for different types of computer languages is growing rapidly and developers prefer creating domain-specific languages for solving specific application domain problems. Building your own programming language has its advantages. It can be your antidote to the ever-increasing size and complexi
Written by the creator of the Unicon programming language, this book will show you how to implement programming languages to reduce the time and cost of creating applications for new or specialized areas of computing Key Features โข Reduce development time and solve pain points in your applicatio