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.
Our 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:
Download the full Table of Contents and a sample chapter.
Marc-André Cournoyer is a coder from Montréal, Québec, author of tinyrb, the smallest Ruby Virtual Machine, Min, a dynamic language running on the JVM, Thin, the fastest Ruby web server and RefactorMyCode.com. He has given talks at international conferences like MeshU and RailsConf. You can find him online, blogging or tweeting.
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.
“ The book I want to read. ”
— Matz, creator of the Ruby language
“ It's been a lot of fun, and surprisingly little work to get a language that covers 95% of what JavaScript can do. ”
— Jeremy Ashkenas, created CoffeeScript after reading the book.
The book will guide you through the creation of a simple language written in Ruby. Once you’ve been through the exercises in the book and feel ready to dive in and create a real language, you’ll start from the template language running on the JVM (Java Virtual Machine) included with the system. And just to make sure you’re ready to use the template right away, we’re also including a screencast explaining the code.
When you buy the system, you get premium access to an online community dedicated to programming language creation. Collaborate on code and get your questions answered get by a group of like-minded individuals.
“ I love this book! It helped me create my own Awesome-to-PHP compiler. It’s not a full featured compiler (yet) but I had a lot of fun coding it and I learned a LOT. ”
— Julien Desrosiers, created Phlower after reading the book.
“ I never had a chance to study language internals at university, and while very interested, I found their inner workings intimidating. With this course I've found a simple but engaging introduction to the world of lexers, parsers, interpreters and compilers, and suddenly a whole new world in programming has opened up. Highly recommended. ”
— David Bolton
If you don’t feel this system is helping you to create your own programming language, contact us in the next two months following your purchase and we’ll give you your money back.
Not sure you should buy the book now or wait? When you buy, you get all updates, new chapters and new features for free. You'll receive an email on each new release of the system with a download link.
The special price of $39.99 is offered for a limited time. Hurry up! After the first 500 copies sold, the price will go up to $49.99. Buy now for instant digital delivery and save $10.