An Esolang Reading List

This list has been hanging about in one form or another, on my website and on the wiki, for a while now.

Reading it will make you an esolang expert, obviously, but only if you read every book on it, obviously.

Compilers: Principles, Techniques, and Tools (1st Ed.)

a.k.a "The Dragon Book". The classic, borderline-incomprehensible book on compiler construction.

Write your own Adventure Programs for your Microcomputer

Try it online

The real Dragon Book. This one book is probably responsible for setting me off in the direction of programming languages (because it describes how to write a simple one-or-two word parser for an an adventure game.)

Also, there are cute pictures of ghosts inside.

The link to the full-text PDF above is endorsed by Usborne, and they have made several other of their computing books from the 80's available for download as well. Details and download links can be found on their Computer and Coding Books page.

Computation: Finite and Infinite Machines

There are lots of books on computability, but this is one of the earlier ones (1967!) and one of the few that treat "Turing tarpits" with any seriousness.

The Cognitive Connection: Thought and Language in Man and Machine

Begins with a disclaimer that it contains at least one error — which turns out to be a giant understatement. The book is riddled with errors, but has a great attitude. Touches on many of the weirder beliefs people have held about logic and language through history (for example, the "logic machines" of Ramon Llull.)

Counterexamples in Topology

Don't worry if you don't know topology — it's not the topology that makes this a worthwhile read, it's the counterexamples.

Commodore 64 Programmer's Reference Guide

Try it online

Classic. I urge you to read the "crunching" guide on pages 24-27, how the screen editor works on pages 94-97, the vaguely condescending paragraph at the top of page 153, and the comment on program line 20 on page 148, and tell me that the Commodore 64 isn't an esoteric architecture.

1001 Things to Do With your Commodore 64

Try it online

Basically a font of mathematical/engineering/physical trivia and random ideas for what could be done with a computer. Although, I'm pretty sure they re-published effectively the same book of ideas and BASIC program fragments for every microcomputer on the market at the time, and this just happened to the be Commodore 64 one.

Microprocessor Programming for Computer Hobbyists

Older computer science book, addressing machine-level programming with a sort-of high level language called PL/M, which resembles PL/I. Really not bad.

Patterns of Software: Tales from the Software Community

Try it online

By he of "worse is better" fame.

Kind of goes all over the place, but worthwhile for its comparison of object-oriented programming to poetic compression, and for making a case that beauty may not be subjective.

Mathematical Circus

An edited compilation of Martin Gardner's columns on recreational mathematics.

Theory of Computation

There are lots of books on computability. This is one of them. I don't think it's the best one, but it's the one that defines the programming language "PL" and, more interestingly, PL's primitive recursive subset PL-{GOTO}, for which Cat's Eye Technologies has implemented a compiler to ilasm.

The Real Frank Zappa Book

Mainly for Zappa's theory of art ("entertainment objects") which describes quite nicely how I think of esolangs. The rest of the book is pretty interesting too, though.

Laws of Form

OMG this BOOK will BLOW your MIND!!!

Gödel, Escher, Bach: An Eternal Golden Braid

OMG did I say Laws of Form will blow your mind? OMFG this book will TOTALLY BLOW your EVER-LOVIN' MIND!!1!

A New Kind of Science