Creating a programming language from scratch is hard. It takes several attempts before finally coming up with a fully working language. This system will teach you all the tricks you need to know to make your language come to life. This is a great skill to put on your résumé and it's also fun to learn. In this post i am going to present you an easy step-by-step book that will guide you through the creation of a simple language written in Ruby. I am reading this book currently, and for now i am really satisfied.
What you’ll learn
The system will walk you through each step of language-building. Each section of the book will introduce a new concept and then apply its principles to a language that we’ll build together. All technical chapters end with a Do It Yourself section that suggest some language-extending exercises. You’ll find solutions to those at the end of this book.
The language will be dynamic and very similar to Ruby and Python. All of the code will be in Ruby, but I’ve put lots of attention to keep the code as simple as possible so that you can understand what’s happening even if you don’t know Ruby. The focus of this book is not on how to build a production-ready language. Instead, it should serve as an introduction in building your first toy language.
Here are some subjects covered in the book:
- Lexer, with Python-style indentation
- Parser, using Racc (a Yacc-like tool)
- Runtime, bootstrapping and self-hosting
- Compilation, using LLVM
- And much more!
Create Your Own Programming Language
Learn how to create a simple programming language in a few days with this easy step-by-step guide.
Do you have questions, comments, or suggestions? Feel free to post a comment!
Liked this post? Make a PayPal Donation to keep us strong.