Building Programming Language Interpreters. A practical journey from idea to implementation in C++ - Helion

Tytuł oryginału: Building Programming Language Interpreters. A practical journey from idea to implementation in C++
ISBN: 9781837630844
stron: 165, Format: ebook
Księgarnia: Helion
Cena książki: 139,00 zł
Książka będzie dostępna od czerwca 2025
Designing a custom programming language can be the most effective way to solve certain types of problems—especially when precision, safety, or domain-specific expressiveness matters. This book guides you through the full process of creating your own language and interpreter, from design to implementation, using modern C++.
You’ll start by exploring when and why building a language is worth it, and how to design one to match a specific problem domain. Along the way, you’ll examine real-world interpreter architectures and how their design decisions affect language capabilities.
The book then walks through the entire process of building an interpreter: defining the syntax, building a parser and semantic model, designing an abstract syntax tree, generating executable instructions, and implementing a runtime. All examples are in modern C++, with a focus on clean architecture and real-world usability.
By the end, you’ll have a fully working interpreter for a domain-specific language designed to handle network protocols—plus the knowledge and tools to design your own language from scratch.
Zobacz także:
- Windows Media Center. Domowe centrum rozrywki 66,67 zł, (8,00 zł -88%)
- Ruby on Rails. Ćwiczenia 18,75 zł, (3,00 zł -84%)
- Efekt piaskownicy. Jak szefować żeby roboty nie zabrały ci roboty 59,50 zł, (11,90 zł -80%)
- Przywództwo w świecie VUCA. Jak być skutecznym liderem w niepewnym środowisku 58,64 zł, (12,90 zł -78%)
- Scrum. O zwinnym zarządzaniu projektami. Wydanie II rozszerzone 58,64 zł, (12,90 zł -78%)
Spis treści
Building Programming Language Interpreters. A practical journey from idea to implementation in C++ eBook -- spis treści
- 1. Part 1: Setting up the Environment
- 2. The blurring lines between Native Code, Virtual Machines, and Interpreters
- 3. Instructions, Concurrency, Inputs, Outputs
- 4. Native types, user types, extension points
- 5. Putting it all together, making trade-off decisions
- 6. Review of Programming Language Paradigms
- 7. Values, Containers, and the Language Meta-model
- 8. Scopes, Namespace and Code Reuse
- 9. Putting it all together, creating a coherent vision
- 10. Initialization and Entry Point
- 11. Execution frames, the stack and the trampoline function
- 12. Running and Testing Language Operators
- 13. Lexing: Turning text into a stream of tokens
- 14. Parsing: Turning a stream of tokens into a parse tree
- 15. Analysing: Turning a parse tree into an Abstract Syntax Tree
- 16. Generating: Turning an Abstract Syntax Tree into Instructions
- 17. Proving that it works