Rule-Based Programming in Interactive Fiction

Wonderfully technical discussion of interactive fiction programming issues, presented by Andrew Plotkin at Penguicon 7.  Coding is art, art is code.

As I write this, Inform 7 is approaching its third birthday. I7 is a tool
for creating interactive fiction (text adventure games). Like all the most
powerful IF development tools, I7 is a programming language — a powerful
and peculiar one.


Inform 7 gets a lot of attention for its English-like syntax. I’m not going
to talk about the natural-language aspects of I7. I’m going to talk about
the underlying programming model, the system of rules and rulebooks. That’s
less attention-grabbing than the flashy syntax; but, in my opinion, it’s
equally radical. And perhaps a more important development, in the long run.

To be fair, I also like talking about the rule-based programming model
because I contributed some of its ideas, back when I7 was first taking
shape. I’m not claiming authorship here, mind you. I got into a long and
digressive email conversation with Graham Nelson and Emily Short, in which
we all threw ideas around, and then Graham went ahead and spent six years
developing his ideas. I shoved mine on the shelf.

This means that I will talk about I7 for a while, and then break into a wild
flight of “but this is how I think it should be done!” And then
finish up with all the reasons I haven’t made it work yet. Such is a
hacker’s life.