Programming Language Implementation
eBook - PDF

Programming Language Implementation

A Practical Introduction with Python

  1. 408 pages
  2. English
  3. PDF
  4. Available on iOS & Android
eBook - PDF

Programming Language Implementation

A Practical Introduction with Python

About this book

The approach to implementing programming languages has shifted noticeably over the past two decades. The success of Java, with its virtual-machine approach, has paved the way for alternative methods of implementing mainstream languages, diverging from traditional machine-language targeted compilation. Since then, many successful modern programming languages such as JavaScript, Ruby, and Python have offered alternative implementation techniques such as incremental interpreters, virtual machines, and just-in-time compilers.

The rise of domain-specific languages, sometimes called "little languages," has likewise been influenced and supported by this shift. Domain-specific languages can solve problems in specific problem areas within their specialized domains, unlike general-purpose languages such as Python or C++, which solve problems in a wide spectrum of domains.

In this book we explore the various techniques and perspectives brought about by this shift in programming language implementation. We particularly focus on domain-specific languages, which rarely use full-blown compilers for implementation in favor of an interpretation or virtual-machine approach.

  • A "from day one" approach gets students started with implementing programming languages right away.
  • Small, realistic languages are used to cover interpretation, virtual machines, and compilers.
  • Implementation is "from scratch," so all steps are transparent and accessible to the student.

Tools to learn more effectively

Saving Books

Saving Books

Keyword Search

Keyword Search

Annotating Text

Annotating Text

Listen to it instead

Listen to it instead

Information

Publisher
De Gruyter
Year
2024
eBook ISBN
9781590282946

Table of contents

  1. CONTENTS
  2. PREFACE
  3. CHAPTER 1: PROGRAMMING LANGUAGES AND THEIR PROCESSORS
  4. CHAPTER 2: PARSING AND LEXING
  5. CHAPTER 3: SYNTAX-DIRECTED PROCESSING
  6. CHAPTER 4: INTERPRETATION WITH INTERMEDIATE REPRESENTATIONS
  7. CHAPTER 5: TREE-BASED INTERMEDIATE REPRESENTATIONS
  8. CHAPTER 6: COMPILERS
  9. CHAPTER 7: SYMBOL TABLES AND SCOPE
  10. CHAPTER 8: FUNCTIONS
  11. CHAPTER 9: FUNCTION CALLS ON REAL AND VIRTUAL MACHINES
  12. CHAPTER 10: COMPILING FOR REAL MACHINES
  13. CHAPTER 11: TYPE SYSTEMS
  14. CHAPTER 12: STRUCTURED DATA TYPES
  15. CHAPTER 13: PARSER GENERATORS
  16. CHAPTER 14: LLVM: A COMPILER BACK-END FRAMEWORK
  17. APPENDIX: AN ONTOLOGY OF OUR LANGUAGES
  18. BIBLIOGRAPHY
  19. INDEX

Frequently asked questions

Yes, you can cancel anytime from the Subscription tab in your account settings on the Perlego website. Your subscription will stay active until the end of your current billing period. Learn how to cancel your subscription
No, books cannot be downloaded as external files, such as PDFs, for use outside of Perlego. However, you can download books within the Perlego app for offline reading on mobile or tablet. Learn how to download books offline
Perlego offers two plans: Essential and Complete
  • Essential is ideal for learners and professionals who enjoy exploring a wide range of subjects. Access the Essential Library with 800,000+ trusted titles and best-sellers across business, personal growth, and the humanities. Includes unlimited reading time and Standard Read Aloud voice.
  • Complete: Perfect for advanced learners and researchers needing full, unrestricted access. Unlock 1.4M+ books across hundreds of subjects, including academic and specialized titles. The Complete Plan also includes advanced features like Premium Read Aloud and Research Assistant.
Both plans are available with monthly, semester, or annual billing cycles.
We are an online textbook subscription service, where you can get access to an entire online library for less than the price of a single book per month. With over 1 million books across 990+ topics, we’ve got you covered! Learn about our mission
Look out for the read-aloud symbol on your next book to see if you can listen to it. The read-aloud tool reads text aloud for you, highlighting the text as it is being read. You can pause it, speed it up and slow it down. Learn more about Read Aloud
Yes! You can use the Perlego app on both iOS and Android devices to read anytime, anywhere — even offline. Perfect for commutes or when you’re on the go.
Please note we cannot support devices running on iOS 13 and Android 7 or earlier. Learn more about using the app
Yes, you can access Programming Language Implementation by Lutz Hamel in PDF and/or ePUB format. We have over one million books available in our catalogue for you to explore.