Rule-Based Programming in Interactive Fiction (2009)
eblong.com
eblong.com
Here's the obligatory Cloak of Darkness: https://github.com/kmill/textadv/blob/master/games/cloak.py
Decorators can go a long way for pretending Python has a metaprogramming facility!
(I made the engine so that I could experiment with a continuation-like object which saves the entire world state. Example at http://tep.mit.edu:8888/game/continuations )