Sunday, July 29, 2012

A FAQ About "How To Create Your Own Freaking Awesome Programming Language"

I advertise this in my blog sidebar, and blogged it once or twice:



I've run into a couple misconceptions here and there on Twitter, etc., so I'm going to blog this quick FAQ. It's more a "frequently mistaken assumptions," then a true FAQ, though.

First of all, I didn't write it. It was written by a Ruby developer from Canada named Marc-André Cournoyer.

Jeremy Ashkenas read it before writing CoffeeScript, and the first version of the CoffeeScript compiler used this book (and I believe its code) as a starting point; however, the CoffeeScript compiler's been completely rewritten since then (at least once).

It's not a comprehensive overview of lexical theory and doesn't aim to be; its goal is to get you up and running as fast as possible. Like Jeremy Ashkenas, if you build a language with this book which people use and like, you will probably end up rebuilding its internals at some later date.

I also wrote a more detailed review.