-
Book Overview & Buying
-
Table Of Contents
Building Programming Language Interpreters
By :
Programming languages are an integral part of our culture as software engineers and developers—they define how we look at the problems we want to solve. Significant changes to that culture are sometimes driven by the introduction of entirely new general-purpose programming languages, but it’s often the case that DSLs focused on very limited use cases have a much deeper impact on how problems are solved across a variety of programming languages.
Designing and implementing a new programming language requires careful consideration of what needs to be supported in the first version and what can be deferred to future implementations. In this book, we will be narrowing the focus to a DSL that focuses on implementing network protocols, with the first version limited to synchronous request–response protocols such as HTTP/1.1.
Beyond defining the scope, we also have to define some more concrete guidelines, such as how we’re going to use the sans I/O approach to allow the programming language to be used in more scenarios.
Likewise, we will avoid coupling the execution of the interpreted code with the native stack, which will give whoever uses the interpreter various options regarding how to handle concurrency, callbacks, and execution.
In the next chapter, we will focus on the importance of the various levels of abstraction that programming languages use to make specific kinds of problems easier to solve.
Get This Book’s PDF Version and Exclusive ExtrasScan the QR code (or go to packtpub.com/unlock). Search for this book by name, confirm the edition, and then follow the steps on the page. |
|
|
Note: Keep your invoice handy. Purchases made directly from Packt don’t require an invoice. |
Change the font size
Change margin width
Change background colour

