
Sách keo gáy, bìa mềm
This book is for software developers interested in
the idea of inventing their own language or developing a domain-specific
language. Intermediate or better proficiency in Java or C++ programming
languages (or another high-level programming language) is assumed.
Dr.
Jeffery’s experiences building the Unicon language are used to add
context to the concepts, and relevant examples are provided in both
Unicon and Java so that you can follow along in your language of choice.
You’ll
build the frontend of a compiler for your language with a lexical
analyzer and parser, including the handling of parse errors. Then you’ll
explore a series of syntax tree traversals before looking at code
generation for a bytecode virtual machine or native code.
In this
edition, a new chapter has been added to assist you in comprehending the
nuances and distinctions between preprocessors and transpilers. Code
examples have been modernized, expanded, and rigorously tested, and all
content has undergone thorough refreshing. You’ll learn to implement
code generation techniques using practical examples, including the
Unicon Preprocessor and transpiling Jzero code to Unicon. You'll move to
domain-specific language features and learn to create them as built-in
operators and functions. You’ll also cover garbage collection.
- Analyze requirements for your language and design syntax and semantics.
- Write grammar rules for common expressions and control structures.
- Build a scanner to read source code and generate a parser to check syntax.
- Implement syntax-coloring for your code in IDEs like VS Code.
- Write tree traversals and insert information into the syntax tree.
- Implement a bytecode interpreter and run bytecode from your compiler.
- Write native code and run it after assembling and linking using system tools.
- Preprocess and transpile code into another high-level language.
Categories:Computers - Programming
Year:2024
Edition:2 / converted
Publisher:-.-
Language:english
Pages:557