0
Your Cart
Frequently bought together:
Original price was: $59.99.Current price is: $19.99.
Original price was: $49.99.Current price is: $19.99.
Original price was: $59.99.Current price is: $19.99.
Original price was: $59.99.Current price is: $19.99.
Original price was: $39.99.Current price is: $19.99.
Original price was: $39.99.Current price is: $19.99.
Original price was: $39.99.Current price is: $19.99.
Original price was: $49.99.Current price is: $19.99.
Original price was: $39.99.Current price is: $19.99.
Original price was: $39.99.Current price is: $19.99.
Original price was: $39.99.Current price is: $19.99.
Original price was: $79.99.Current price is: $19.99.
Original price was: $49.99.Current price is: $19.99.
Original price was: $89.99.Current price is: $19.99.
Original price was: $59.99.Current price is: $19.99.
Original price was: $39.99.Current price is: $19.99.
Original price was: $39.99.Current price is: $19.99.
Original price was: $49.99.Current price is: $19.99.
Original price was: $49.99.Current price is: $28.99.
Original price was: $29.99.Current price is: $14.95.
Original price was: $49.99.Current price is: $19.99.
Original price was: $39.99.Current price is: $19.99.
Original price was: $120.99.Current price is: $29.99.
Original price was: $79.99.Current price is: $19.99.
Original price was: $59.99.Current price is: $19.99.
Original price was: $39.99.Current price is: $19.99.
Original price was: $120.99.Current price is: $19.99.
Total: $19.99

Written by the creator of the Unicon programming language, this book will show you how to implement programming languages to reduce the time and cost of creating applications for new or specialized areas of computing

Key Features

  • Reduce development time and solve pain points in your application domain by building a custom programming language
  • Learn how to create parsers, code generators, file readers, analyzers, and interpreters
  • Create an alternative to frameworks and libraries to solve domain-specific problems

Book Description

The need for different types of computer languages is growing rapidly and developers prefer creating domain-specific languages for solving specific application domain problems. Building your own programming language has its advantages. It can be your antidote to the ever-increasing size and complexity of software.

In this book, you’ll start with implementing the frontend of a compiler for your language, including a lexical analyzer and parser. The book covers a series of traversals of syntax trees, culminating with code generation for a bytecode virtual machine. Moving ahead, you’ll learn how domain-specific language features are often best represented by operators and functions that are built into the language, rather than library functions. We’ll conclude with how to implement garbage collection, including reference counting and mark-and-sweep garbage collection. Throughout the book, Dr. Jeffery weaves in his experience of building the Unicon programming language to give better context to the concepts where relevant examples are provided in both Unicon and Java so that you can follow the code of your choice of either a very high-level language with advanced features, or a mainstream language.

By the end of this book, you’ll be able to build and deploy your own domain-specific languages, capable of compiling and running programs.

What you will learn

  • Perform requirements analysis for the new language and design language syntax and semantics
  • Write lexical and context-free grammar rules for common expressions and control structures
  • Develop a scanner that reads source code and generate a parser that checks syntax
  • Build key data structures in a compiler and use your compiler to build a syntax-coloring code editor
  • Implement a bytecode interpreter and run bytecode generated by your compiler
  • Write tree traversals that insert information into the syntax tree
  • Implement garbage collection in your language

Who this book is for

This book is for software developers interested in the idea of inventing their own language or developing a domain-specific language. Computer science students taking compiler construction courses will also find this book highly useful as a practical guide to language implementation to supplement more theoretical textbooks. Intermediate-level knowledge and experience working with a high-level language such as Java or the C++ language are expected to help you get the most out of this book.

Table of Contents

  1. Why Build Another Programming Language
  2. Programming Language Design
  3. Scanning Source Code
  4. Parsing
  5. Syntax Trees
  6. Symbol Tables
  7. Checking Base Types
  8. Checking Types on Arrays, Method Calls, and Structure Accesses
  9. Intermediate Code Generation
  10. Syntax Cloning in an IDE
  11. Bytecode Interpreters
  12. Generating Bytecode
  13. Native Code Generation
  14. Implementing Operators and Built-In Functions
  15. Domain Control Structures
  16. Garbage Collection
  17. Final Thoughts
  18. Appendix A – Unicon Essentials

8 reviews for Build Your Own Programming Language: A programmer’s guide to designing compilers, interpreters, and DSLs for solving modern computing problems

  1. Sudarshan Gaikaiwari
    March 13, 2024
    Two semesters worth of compiler implementation
    Knowing how compilers work is critical for all software engineers. This book has all the information that you would learn at a research university. It...More
    Knowing how compilers work is critical for all software engineers. This book has all the information that you would learn at a research university. It also includes an implementation of a complete compiler. This allows the reader to have access to an implementation to modify the code and experiment. Highly recommended for anyone interested in learning more about compilers
    Helpful? 0 0
    saba shabir
    September 29, 2022
    Very Good
    Helped me get a A in my exams
    Helpful? 0 0
    Kenneth R. Walker
    March 21, 2022
    Excellent resource
    The book explains compiler writing in an elegant manner. Code examples accommodate the content exceptionally. Excellent place to start learning how ...More
    The book explains compiler writing in an elegant manner. Code examples accommodate the content exceptionally. Excellent place to start learning how to write a programming language.
    Helpful? 0 0
    Phillip
    February 11, 2022
    More than a compiler book!
    Build Your Own Programming Language: beyond its detailed and thoughtful discussion of how to build compilers, this book demonstrates and evaluates the...More
    Build Your Own Programming Language: beyond its detailed and thoughtful discussion of how to build compilers, this book demonstrates and evaluates the tools needed to construct a computer language. Simultaneously evaluating Unicon and Java -- both their advantages and sometimes awkwardnesses -- the book gives guidance on strategies and skills necessary to handle common problems encountered in advanced programming tasks.
    Helpful? 0 0
    Greg Jeffery
    February 6, 2022
    Excellent textbook for a Compilers course.
    I’m still reading through the book but I believe this would be a very good compliment textbook for a Compilers class.
    Helpful? 0 0
    David Gamey
    January 6, 2022
    Practical how-to advice on building programming languages with code examples, tools, and videos
    Build Your Own Programming Language presents practical hands-on advice, sample code respositories, and videos taking you step by step through the proc...More
    Build Your Own Programming Language presents practical hands-on advice, sample code respositories, and videos taking you step by step through the process. It covers everything from motivation, design, scanning, parasing, tools, IDEs, bytecode and native code generation, memory allocation and management, and runtime support. It shows you how by implementing a Java subset, called Jzero, using both Java and Unicon. Great book for those looking to build or just understand.
    Helpful? 0 0
    David Gamey
    December 31, 2021
    Practical how-to advice on building programming languages with code examples, tools, and videos
    Build Your Own Programming Language presents practical hands-on advice, sample code respositories, and videos taking you step by step through the proc...More
    Build Your Own Programming Language presents practical hands-on advice, sample code respositories, and videos taking you step by step through the process. It covers everything from motivation, design, scanning, parasing, tools, IDEs, bytecode and native code generation, memory allocation and management, and runtime support. It shows you how by implementing a Java subset, called Jzero, using both Java and Unicon. Great book for those looking to build or just understand.
    Helpful? 0 0
    Tiny
    December 31, 2021
    Valuable skills for detailed outcomes
    Have you ever been working on a project and realize your programming language doesn’t reach desired goals? Have you ever thought your particular GitH...More
    Have you ever been working on a project and realize your programming language doesn’t reach desired goals? Have you ever thought your particular GitHub project requires a different approach? In this case, Jeffery delivers exactly the right book for you in exhausting detail. After deciding he was unhappy that one of his favorite languages was no longer support, he explores how to build your own language, from basic architecture and requirements, through parsing, bytecode, and interaction with hardware to maximize what you want from your programming language.

    The first section builds the architecture, constructs the syntax tree, establishes commands, and explores the basic parameters from UFlex, JFlex and JZero. Also included is an excellent section on working with regex to set up key rules. The second section then moves into how to make commands work through your syntax tree, constructing the traversal, building cases and methods, and making use of unique libraries to improve actions. As a bonus, Jeffrey includes an excellent section on building, coloring and parsing your own IDE.

    Finally, the book explores bytecode interpreters, taking your language down to machine code to make sure the interpretation is correct. This expands in building operators within Unicon, the language Jeffrey chooses to improve and builds domain control structures to scan and render graphics for your applications. Not neglected is the ability to remove the garbage, find those areas no longer needed, cleaning data and focus on maximizing the memory storage you need for operations. The book also includes an excellent appendix on Unicon.

    A great book, detailed and extensive. If your language is falling behind, or your favorite tools are no longer supported, this will get you where you need to be. I make sure to chunk a good number of hours once you start, as none of these options are simple. Though starting with the basics, expect to spend a good deal of time working with your architecture and syntax to make it run correctly. Maybe, if you spend the right amount of time, your language can be the next Go, Ruby or another format the next generation of programmers needs to succeed.
    Helpful? 0 0
Add a review

Your email address will not be published. Required fields are marked *

X

Frequently bought with Build Your Own Programming Language: A programmer's guide to designing compilers, interpreters, and DSLs for solving modern computing problems


AI-Assisted Programming: Better Planning, Coding, Testing, and Deployment Original price was: $59.99.Current price is: $19.99.
View more
Learn AI-Assisted Python Programming with GitHub Copilot and ChatGPT Original price was: $49.99.Current price is: $19.99.
View more
Illustrated Guide to Python 3: A Complete Walkthrough of Beginning Python with Unique Illustrations Showing how Python Really Works. Now covering Python 3.6 Original price was: $59.99.Current price is: $14.99.
View more
AI-Assisted Programming for Web and Machine Learning: Improve your development workflow with ChatGPT and GitHub Copilot Original price was: $49.99.Current price is: $19.99.
View more
Deep Learning Illustrated: A Visual, Interactive Guide to Artificial Intelligence (Addison-Wesley Data & Analytics Series Original price was: $59.99.Current price is: $19.99.
View more
Quick Start Guide to Large Language Models: Strategies and Best Practices for ChatGPT, Embeddings, Fine-Tuning, and Multimodal AI (Addison-Wesley Data & Analytics Series) Original price was: $79.99.Current price is: $19.99.
View more
Designing Machine Learning Systems: An Iterative Process for Production-Ready Applications Original price was: $59.99.Current price is: $19.99.
View more
P-AI-R Programming: How Al tools like GitHub Copilot and ChatGPT Can Radically Transform Your Development Workflow Original price was: $39.99.Current price is: $19.99.
View more
Generative AI with LangChain: Build large language model (LLM) apps with Python, ChatGPT, and other LLMs Original price was: $59.99.Current price is: $19.99.
View more
Clean Code Principles And Patterns: Python Edition Original price was: $39.99.Current price is: $19.99.
View more
LangChain Programming for Beginners: A Step-By-Step Guide to AI Application Development With LangChain, Python, OpenAI/ChatGPT, Google/Gemini and Other LLMs Original price was: $29.99.Current price is: $19.99.
View more
Mastering Large Language Models with Python: Unleash the Power of Advanced Natural Language Processing for Enterprise Innovation and Efficiency Using Large ... Models (LLMs) with Python Original price was: $29.99.Current price is: $19.99.
View more
Python Programming for Beginners: The Complete Python Coding Crash Course - Boost Your Growth with an Innovative Ultra-Fast Learning Framework and Exclusive Hands-On Interactive Exercises & Projects Original price was: $39.99.Current price is: $19.99.
View more
Learn Python Programming: An in-depth introduction to the fundamentals of Python Original price was: $39.99.Current price is: $19.99.
View more
Computer Programming for Absolute Beginners: Learn essential computer science concepts and coding techniques to kick-start your programming careering techniques to kick-start your programming career Original price was: $39.99.Current price is: $19.99.
View more
Absolute Beginner's Guide to Python Programming: Master Coding Quickly with Hands-On, Real-World Projects, Step-By-Step Guidance, and Comprehensive Learning for All Ages Original price was: $39.99.Current price is: $19.99.
View more
Python (2nd Edition): Learn Python in One Day and Learn It Well. Python for Beginners with Hands-on Project. (Learn Coding Fast with Hands-On Project Book 1) Original price was: $29.99.Current price is: $19.96.
View more
Fluent Python: Clear, Concise, and Effective Programming Original price was: $39.99.Current price is: $19.99.
View more
Python Programming: An Introduction to Computer Science, 3rd Ed. Original price was: $49.99.Current price is: $19.99.
View more
Rust Programming Language: A Comprehensive Guide To Systems Programming For Fast, Safe Systems Development With And Hands-On Examples Original price was: $39.99.Current price is: $19.99.
View more
Practical Java Programming with ChatGPT: Develop, Prototype and Validate Java Applications by integrating OpenAI API and leveraging Generative AI and LLMs Original price was: $59.99.Current price is: $19.99.
View more
Python Programming and SQL Bible: 7 Books in 1: Your Comprehensive Guide to Python Mastery, SQL Proficiency, Web Developm Original price was: $29.99.Current price is: $19.99.
View more
ChatGPT For Dummies (2 Books in 1): Chatgpt Prompts & Chatgpt for Beginners - Over 300 Prompts and Learning Example Original price was: $59.99.Current price is: $19.99.
View more
Computer Programming And Cyber Security for Beginners: This Book Includes: Python Machine Learning, SQL, Linux, Hacking with Kali Linux, Ethical Hacking. Coding and Cybersecurity Fundamentals Original price was: $79.99.Current price is: $19.99.
View more
Python: 3 books in 1- Your complete guide to python programming with Python for Beginners, Python Data Analysis and Python Machine Learning (Programming Languages for Beginners) Original price was: $39.99.Current price is: $19.99.
View more
Python Crash Course, 3rd Edition: A Hands-On, Project-Based Introduction to Programming Original price was: $39.99.Current price is: $19.99.
View more
Introduction to Machine Learning with Python: A Guide for Data Scientists Original price was: $39.99.Current price is: $19.99.
View more
The Self-Taught Programmer: The Definitive Guide to Programming Professionally Original price was: $39.99.Current price is: $19.99.
View more
Programming Languages: Principles and Practices (Advanced Topics) Original price was: $79.99.Current price is: $19.99.
View more
Programming Rust: Fast, Safe Systems Development Original price was: $49.99.Current price is: $19.99.
View more
Programming Languages: Concepts and Implementation Original price was: $89.99.Current price is: $19.99.
View more
Learning Python: Powerful Object-Oriented Programming Original price was: $59.99.Current price is: $19.99.
View more
Programming for Problem-Solving with C: Formulating Algorithms for Complex Problems Original price was: $39.99.Current price is: $19.99.
View more
Genetic Algorithms and Machine Learning for Programmers: Create AI Models and Evolve Solutions (Pragmatic Programmers) Original price was: $49.99.Current price is: $19.99.
View more
The Rise of AI:: Implications and Applications of Artificial Intelligence in Academic Libraries (Volume 78) (Publications in Librarianship) Original price was: $69.99.Current price is: $19.99.
View more
Introducing Python: Modern Computing in Simple Packages Original price was: $39.99.Current price is: $19.99.
View more
Linux: This Book Includes 4 Manuscripts. The Underground Bible to the UNIX Operating System with Tools On Security and Kali Hacking to Understand Computer Programming, Data Science and Command Line Original price was: $49.99.Current price is: $24.99.
View more
Python for Programmers: with Big Data and Artificial Intelligence Case Studies Original price was: $49.99.Current price is: $19.99.
View more
The Pragmatic Programmer: 20th Anniversary Edition, 2nd Edition: Your Journey to Mastery Original price was: $49.99.Current price is: $28.99.
View more
Algorithms to Live By: The Computer Science of Human Decisions Original price was: $29.99.Current price is: $14.95.
View more
Artificial Intelligence Programming with Python: From Zero to Hero Original price was: $49.99.Current price is: $19.99.
View more
Programming Excel with VBA: A Practical Real-World Guide Original price was: $39.99.Current price is: $19.99.
View more
Programming and Problem Solving with C++: Comprehensive: Comprehensive Original price was: $120.99.Current price is: $29.99.
View more
Concepts of Programming Languages, Global Edition Original price was: $79.99.Current price is: $19.99.
View more
Computer Programming And Software Development: Coding With C#, Python, JavaScript, React, Angular And Typescript Original price was: $29.99.Current price is: $19.99.
View more
Quick Start Guide to Penetration Testing: With NMAP, OpenVAS and Metasploit Original price was: $59.99.Current price is: $19.99.
View more
Cracking the Coding Interview: 189 Programming Questions and Solutions (Cracking the Interview & Career) Original price was: $39.99.Current price is: $19.99.
View more
Python Basics: A Practical Introduction to Python 3 Original price was: $39.99.Current price is: $19.99.
View more
Problem Solving with C++ Original price was: $120.99.Current price is: $19.99.
View more