Szczegóły ebooka

Building Programming Language Interpreters. A bottom-up approach to runtimes, execution, and implementation in C++

Building Programming Language Interpreters. A bottom-up approach to runtimes, execution, and implementation in C++

Daniel Ruoso

Ładowanie...
EBOOK
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 designing and implementing your own programming language and interpreter, from language design to execution, using modern C++.
You’ll start by exploring when and why building a domain-specific language is worth it, and how to design one to fit a specific problem domain. Along the way, you’ll examine real-world interpreter architectures and see how their design decisions affect language behavior, capabilities, and runtime trade-offs.
The book then walks through the entire process of interpreter implementation: defining syntax, building a lexer and parser, 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 programming language from scratch.
*Email sign-up and proof of purchase required
  • 1. Defining the Scope
  • 2. The Blurred Lines Between Native Code, Virtual Machines, and Interpreters
  • 3. Instructions, Concurrency, Inputs, and Outputs
  • 4. Native Types, User Types, and 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. Lexical Scopes
  • 9. Putting It All Together and Creating a Coherent Vision
  • 10. Initialization and Entry Point
  • 11. Execution Frames, the Stack, and Continuations
  • 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. Analyzing: Turning a Parse Tree into an Abstract Syntax Tree
  • 16. Generating: Turning an Abstract Syntax Tree into Instructions
  • 17. Proving That It Works
  • Tytuł:Building Programming Language Interpreters. A bottom-up approach to runtimes, execution, and implementation in C++
  • Autor:Daniel Ruoso
  • Tytuł oryginału:Building Programming Language Interpreters. A bottom-up approach to runtimes, execution, and implementation in C++
  • ISBN:9781837630844, 9781837630844
  • Data wydania:2026-01-16
  • Format:Ebook
  • Identyfikator pozycji: e_4gld
  • Wydawca: Packt Publishing
Ładowanie...
Ładowanie...