Inform 7

Still December, still in low-impact posting mode. I figured I’d tell you all about interactive fiction authoring system Inform 7, which still feels new in my mind despite coming out 17 years ago.

I say “Inform 7” to distinguish it from previous versions, which were a very different system. Inform 6 was a cryptic C-style programming language; Inform 7 source code reads like English. Radically so:

A bit of Zork implemented in Inform 7.

I’ve long wanted to learn Inform 7 and create something interesting with it, but every time I do I run into a thick wall of error messages. I feel it’s important to emphasize, from my own experiences trying to code with Inform 7, that this apparent ease-of-use is completely fake. It reads like English, and does what it appears to say. But in fact it’s written in extremely fiddly and precise English. It’s still all programming language, with a precise syntax, it’s just a syntax that makes it readable to both humans and the computer. In this way, it’s like Ultra COBOL.

And yet, reading it is useful to understanding it in an intuitive sense that’s untrue of many programming languages. It eschews the usage of punctuation for random coder things, in the abhorrent C style. Yeah, I said it, I’ve wrestled with C syntax more than once, I even generally understand it, but I really don’t like it.

Inform 7 used to have a great website, at inform7.com, where it could both be obtained and had great examples. That site is gone now, replaced with a GitHub page that is also pretty great, but since it, like all GitHub sites, is relying on the largess of Microsoft, and subject to the eventual enshittification that inevitably affects all corporate-owned hosting, it feels like less than the original. Ah well.

That site contains the Inform 7 documentation, which has a wealth of examples for learning how to use it. Alex Proudfoot runs another GitHub site, Inform 7 Examples, which contains that after which it is named.

This post risks defeating the entire purpose of making low-effort content during a busy time of year, suffice to say this is an unusually-deep rabbit hole of which much more deserves to be said. Later.

The Current Inform 7 Website (GitHub)