Saturday, 8 October 2011

Create Your Own Programming Language: Amazing Book

After writing my introduction, I've decided that it may take me some time to begin posting useful concepts myself (I'm currently very busy with work and writing the content is taking a lot of time).
So what I've decided to do to simply create some useful content for you guys - is do a review on one of my favorite  books on the subject of creating programming languages - it's called: "How To Create Your Own Freaking Awesome Programming Language" and is available at createyourproglang.com.
To describe this book in one word, it's amazing. It teaches a lot of good, core concepts of creating programming languages (along with things about parsing and lexing (don't worry if you don't know what these are - the book covers it all)) and also contains instructions to apply your knowledge so at the end of the book, you've actually created your very own programming language! It's probably worth noting that there are also several videos that come along with it that go through creating the language if you aren't really into books.
The book (and videos) namely use Ruby, but it isn't difficult to apply the same core concepts taught in the book to other languages (such as C++ or Java).

I give this 4.5/5 stars as it's an amazing book (definitely worth reading while I'm producing the blog posts for this blog - it'll give you an amazing basis for creating programming languages) but the videos don't really have a professional touch to them (hence 4.5 and not 5).
I've personally never looked back after buying this, and it's really got me to where I am today.

That's the end of this blog post - remember to purchase the book (and videos) if your interested, and I'll see you in the next blog post!

Introduction!

Hi,

My name is Joe Savage, and since I've recently setup this blog for creating your own programming language. I'm a very experienced programming in a variety of languages (C++, Java, Ruby etc) and have setup this blog to give back some of my knowledge to the community.
Primarily - this blog is for "how-tos and reviews" for creating your own programming or scripting language. Although it seems a daunting task - creating your own programming or scripting language really isn't that difficult! You'll probably need to have some basic programming knowledge in at least one language, but that's all you'll really need before you can just learn some key concepts and then get going on creation. Ruby is quite a recent programming language which was just made by just one man - you could create the next Ruby!
With this said - I'm obviously going to need to actually teach you the core concepts of creating programming languages (which isn't always that easy as some of the more dynamic concepts are quite complex). I'm not going to give any special tips away in this blog post, but hopefully some of my newer blog posts should contain some more useful information!

For now, if your really raring to get going - you can try to create an extremely simple (and likely slow and glitchy) programming language using a language you already know. A great example is the "unsustainable mini programming language" here: http://forum.dev-hq.net/showthread.php?136-Unsustainable-Mini-programming-language/