From Declarative Languages to Declarative Processing in Computer Games

Recent work has shown that we can dramatically improve the performance of computer games and simulations through declarative processing: Character AI can be written in an imperative scripting language which is then compiled to relational algebra and executed by a special games engine with features similar to a main memory database system. In this paper we lay out a challenging research agenda built on these ideas. We discuss several research ideas for novel language features to support atomic actions and reactive programming. We also explore challenges for main-memory query processing in games and simulations including adaptive query plan selection, support for parallel architectures, debugging simulation scripts, and extensions for multi-player games and virtual worlds. We believe that these research challenges will result in a dramatic change in the design of game engines over the next decade.