Step is a declarative programming language that's relatively easy to learn. If you're familiar with Prolog, it's basically a generalization of Prolog1 with a gentler learning curve. It was developed for interactive narrative but is general-purpose in the sense that you can write any algorithm in it you can write in other languages. If Prolog is a language for the Chess Club, Step is a language for theater kids.
While teaching the language, we'll focus on grammars, its use as a query language, and logic programming. Then in later sections, we'll look at other specialized systems such as planners, but will implement those systems in Step. In Part II, we'll talk about how to implement Step and the other systems in more traditional languages.
Notes
-
Step is a generalization of Prolog-style logic programming, SHOP-style HTN planners, and definite-clause grammars. All use the same basic control structure, so they're easy to unify. And all have been used in commercial games.↩