Writing An Interpreter In Go: The Paperback Edition

If you’d asked me a only few months ago if there’ll ever be a printed version of Writing An Interpreter In Go I’d responded with a “Huh, uummm, well, I don’t know. Maybe. Maybe if I’ll find the time and if there’s any interest.”

As it turned out, to my surprise, quite a few people told me that they’d love hold a copy of the book in their hands. And I also had some free time on my hands. Alright, let’s do it then, I thought.

But even though I said that time and interest were the only limiting factors, I knew that there couldn’t be a printed version without Monkey - the programming language that we build in the book - having a logo. Yes, I know, I know, that’s not a real requirement, but a little indulgement I wouldn’t deny myself. So I created a 99designs contest and Hazel Anne submitted the winning entry. I love the logo Monkey has now.

A paperback version of a book also needs a full cover, front and back, and so I wrestled with vector images and PDFs and print dimensions and page bleed and spine widths for quite a while. But, in the end, using createspace to print and distribute my book turned out to be much easier than one might think. I was lucky enough to already have had a working Pandoc setup in place and only needed to add one more LaTeX template, the one for the print version.

The result, I think, was worth it:

That’s 260 pages, 18cm wide and 26cm long, with full-color syntax highlighting.

Since the book is printed on-demand by createspace, which is an Amazon company, it’s available for purchase in these Amazon stores:

Or you can just go to interpreterbook.com and click on one of the big, red buttons.

If you appreciate holding a physical copy of a book in your hands more than having a PDF on your hard drive, I hope you enjoy this paperback edition.